1// Copyright 2021 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 // See, edit, configure, and delete your Google Cloud Platform data 95 CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" 96 97 // View your data across Google Cloud Platform services 98 CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" 99 100 // Manage your data and permissions in Google Cloud Storage 101 DevstorageFullControlScope = "https://www.googleapis.com/auth/devstorage.full_control" 102 103 // View your data in Google Cloud Storage 104 DevstorageReadOnlyScope = "https://www.googleapis.com/auth/devstorage.read_only" 105 106 // Manage your data in Google Cloud Storage 107 DevstorageReadWriteScope = "https://www.googleapis.com/auth/devstorage.read_write" 108) 109 110// NewService creates a new Service. 111func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 112 scopesOption := option.WithScopes( 113 "https://www.googleapis.com/auth/bigquery", 114 "https://www.googleapis.com/auth/bigquery.insertdata", 115 "https://www.googleapis.com/auth/cloud-platform", 116 "https://www.googleapis.com/auth/cloud-platform.read-only", 117 "https://www.googleapis.com/auth/devstorage.full_control", 118 "https://www.googleapis.com/auth/devstorage.read_only", 119 "https://www.googleapis.com/auth/devstorage.read_write", 120 ) 121 // NOTE: prepend, so we don't override user-specified scopes. 122 opts = append([]option.ClientOption{scopesOption}, opts...) 123 opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) 124 opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) 125 client, endpoint, err := htransport.NewClient(ctx, opts...) 126 if err != nil { 127 return nil, err 128 } 129 s, err := New(client) 130 if err != nil { 131 return nil, err 132 } 133 if endpoint != "" { 134 s.BasePath = endpoint 135 } 136 return s, nil 137} 138 139// New creates a new Service. It uses the provided http.Client for requests. 140// 141// Deprecated: please use NewService instead. 142// To provide a custom HTTP client, use option.WithHTTPClient. 143// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 144func New(client *http.Client) (*Service, error) { 145 if client == nil { 146 return nil, errors.New("client is nil") 147 } 148 s := &Service{client: client, BasePath: basePath} 149 s.Datasets = NewDatasetsService(s) 150 s.Jobs = NewJobsService(s) 151 s.Models = NewModelsService(s) 152 s.Projects = NewProjectsService(s) 153 s.Routines = NewRoutinesService(s) 154 s.RowAccessPolicies = NewRowAccessPoliciesService(s) 155 s.Tabledata = NewTabledataService(s) 156 s.Tables = NewTablesService(s) 157 return s, nil 158} 159 160type Service struct { 161 client *http.Client 162 BasePath string // API endpoint base URL 163 UserAgent string // optional additional User-Agent fragment 164 165 Datasets *DatasetsService 166 167 Jobs *JobsService 168 169 Models *ModelsService 170 171 Projects *ProjectsService 172 173 Routines *RoutinesService 174 175 RowAccessPolicies *RowAccessPoliciesService 176 177 Tabledata *TabledataService 178 179 Tables *TablesService 180} 181 182func (s *Service) userAgent() string { 183 if s.UserAgent == "" { 184 return googleapi.UserAgent 185 } 186 return googleapi.UserAgent + " " + s.UserAgent 187} 188 189func NewDatasetsService(s *Service) *DatasetsService { 190 rs := &DatasetsService{s: s} 191 return rs 192} 193 194type DatasetsService struct { 195 s *Service 196} 197 198func NewJobsService(s *Service) *JobsService { 199 rs := &JobsService{s: s} 200 return rs 201} 202 203type JobsService struct { 204 s *Service 205} 206 207func NewModelsService(s *Service) *ModelsService { 208 rs := &ModelsService{s: s} 209 return rs 210} 211 212type ModelsService struct { 213 s *Service 214} 215 216func NewProjectsService(s *Service) *ProjectsService { 217 rs := &ProjectsService{s: s} 218 return rs 219} 220 221type ProjectsService struct { 222 s *Service 223} 224 225func NewRoutinesService(s *Service) *RoutinesService { 226 rs := &RoutinesService{s: s} 227 return rs 228} 229 230type RoutinesService struct { 231 s *Service 232} 233 234func NewRowAccessPoliciesService(s *Service) *RowAccessPoliciesService { 235 rs := &RowAccessPoliciesService{s: s} 236 return rs 237} 238 239type RowAccessPoliciesService struct { 240 s *Service 241} 242 243func NewTabledataService(s *Service) *TabledataService { 244 rs := &TabledataService{s: s} 245 return rs 246} 247 248type TabledataService struct { 249 s *Service 250} 251 252func NewTablesService(s *Service) *TablesService { 253 rs := &TablesService{s: s} 254 return rs 255} 256 257type TablesService struct { 258 s *Service 259} 260 261// AggregateClassificationMetrics: Aggregate metrics for 262// classification/classifier models. For multi-class models, the metrics 263// are either macro-averaged or micro-averaged. When macro-averaged, the 264// metrics are calculated for each label and then an unweighted average 265// is taken of those values. When micro-averaged, the metric is 266// calculated globally by counting the total number of correctly 267// predicted rows. 268type AggregateClassificationMetrics struct { 269 // Accuracy: Accuracy is the fraction of predictions given the correct 270 // label. For multiclass this is a micro-averaged metric. 271 Accuracy float64 `json:"accuracy,omitempty"` 272 273 // F1Score: The F1 score is an average of recall and precision. For 274 // multiclass this is a macro-averaged metric. 275 F1Score float64 `json:"f1Score,omitempty"` 276 277 // LogLoss: Logarithmic Loss. For multiclass this is a macro-averaged 278 // metric. 279 LogLoss float64 `json:"logLoss,omitempty"` 280 281 // Precision: Precision is the fraction of actual positive predictions 282 // that had positive actual labels. For multiclass this is a 283 // macro-averaged metric treating each class as a binary classifier. 284 Precision float64 `json:"precision,omitempty"` 285 286 // Recall: Recall is the fraction of actual positive labels that were 287 // given a positive prediction. For multiclass this is a macro-averaged 288 // metric. 289 Recall float64 `json:"recall,omitempty"` 290 291 // RocAuc: Area Under a ROC Curve. For multiclass this is a 292 // macro-averaged metric. 293 RocAuc float64 `json:"rocAuc,omitempty"` 294 295 // Threshold: Threshold at which the metrics are computed. For binary 296 // classification models this is the positive class threshold. For 297 // multi-class classfication models this is the confidence threshold. 298 Threshold float64 `json:"threshold,omitempty"` 299 300 // ForceSendFields is a list of field names (e.g. "Accuracy") to 301 // unconditionally include in API requests. By default, fields with 302 // empty values are omitted from API requests. However, any non-pointer, 303 // non-interface field appearing in ForceSendFields will be sent to the 304 // server regardless of whether the field is empty or not. This may be 305 // used to include empty fields in Patch requests. 306 ForceSendFields []string `json:"-"` 307 308 // NullFields is a list of field names (e.g. "Accuracy") to include in 309 // API requests with the JSON null value. By default, fields with empty 310 // values are omitted from API requests. However, any field with an 311 // empty value appearing in NullFields will be sent to the server as 312 // null. It is an error if a field in this list has a non-empty value. 313 // This may be used to include null fields in Patch requests. 314 NullFields []string `json:"-"` 315} 316 317func (s *AggregateClassificationMetrics) MarshalJSON() ([]byte, error) { 318 type NoMethod AggregateClassificationMetrics 319 raw := NoMethod(*s) 320 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 321} 322 323func (s *AggregateClassificationMetrics) UnmarshalJSON(data []byte) error { 324 type NoMethod AggregateClassificationMetrics 325 var s1 struct { 326 Accuracy gensupport.JSONFloat64 `json:"accuracy"` 327 F1Score gensupport.JSONFloat64 `json:"f1Score"` 328 LogLoss gensupport.JSONFloat64 `json:"logLoss"` 329 Precision gensupport.JSONFloat64 `json:"precision"` 330 Recall gensupport.JSONFloat64 `json:"recall"` 331 RocAuc gensupport.JSONFloat64 `json:"rocAuc"` 332 Threshold gensupport.JSONFloat64 `json:"threshold"` 333 *NoMethod 334 } 335 s1.NoMethod = (*NoMethod)(s) 336 if err := json.Unmarshal(data, &s1); err != nil { 337 return err 338 } 339 s.Accuracy = float64(s1.Accuracy) 340 s.F1Score = float64(s1.F1Score) 341 s.LogLoss = float64(s1.LogLoss) 342 s.Precision = float64(s1.Precision) 343 s.Recall = float64(s1.Recall) 344 s.RocAuc = float64(s1.RocAuc) 345 s.Threshold = float64(s1.Threshold) 346 return nil 347} 348 349// Argument: Input/output argument of a function or a stored procedure. 350type Argument struct { 351 // ArgumentKind: Optional. Defaults to FIXED_TYPE. 352 // 353 // Possible values: 354 // "ARGUMENT_KIND_UNSPECIFIED" 355 // "FIXED_TYPE" - The argument is a variable with fully specified 356 // type, which can be a struct or an array, but not a table. 357 // "ANY_TYPE" - The argument is any type, including struct or array, 358 // but not a table. To be added: FIXED_TABLE, ANY_TABLE 359 ArgumentKind string `json:"argumentKind,omitempty"` 360 361 // DataType: Required unless argument_kind = ANY_TYPE. 362 DataType *StandardSqlDataType `json:"dataType,omitempty"` 363 364 // Mode: Optional. Specifies whether the argument is input or output. 365 // Can be set for procedures only. 366 // 367 // Possible values: 368 // "MODE_UNSPECIFIED" 369 // "IN" - The argument is input-only. 370 // "OUT" - The argument is output-only. 371 // "INOUT" - The argument is both an input and an output. 372 Mode string `json:"mode,omitempty"` 373 374 // Name: Optional. The name of this argument. Can be absent for function 375 // return argument. 376 Name string `json:"name,omitempty"` 377 378 // ForceSendFields is a list of field names (e.g. "ArgumentKind") to 379 // unconditionally include in API requests. By default, fields with 380 // empty values are omitted from API requests. However, any non-pointer, 381 // non-interface field appearing in ForceSendFields will be sent to the 382 // server regardless of whether the field is empty or not. This may be 383 // used to include empty fields in Patch requests. 384 ForceSendFields []string `json:"-"` 385 386 // NullFields is a list of field names (e.g. "ArgumentKind") to include 387 // in API requests with the JSON null value. By default, fields with 388 // empty values are omitted from API requests. However, any field with 389 // an empty value appearing in NullFields will be sent to the server as 390 // null. It is an error if a field in this list has a non-empty value. 391 // This may be used to include null fields in Patch requests. 392 NullFields []string `json:"-"` 393} 394 395func (s *Argument) MarshalJSON() ([]byte, error) { 396 type NoMethod Argument 397 raw := NoMethod(*s) 398 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 399} 400 401// ArimaCoefficients: Arima coefficients. 402type ArimaCoefficients struct { 403 // AutoRegressiveCoefficients: Auto-regressive coefficients, an array of 404 // double. 405 AutoRegressiveCoefficients []float64 `json:"autoRegressiveCoefficients,omitempty"` 406 407 // InterceptCoefficient: Intercept coefficient, just a double not an 408 // array. 409 InterceptCoefficient float64 `json:"interceptCoefficient,omitempty"` 410 411 // MovingAverageCoefficients: Moving-average coefficients, an array of 412 // double. 413 MovingAverageCoefficients []float64 `json:"movingAverageCoefficients,omitempty"` 414 415 // ForceSendFields is a list of field names (e.g. 416 // "AutoRegressiveCoefficients") to unconditionally include in API 417 // requests. By default, fields with empty values are omitted from API 418 // requests. However, any non-pointer, non-interface field appearing in 419 // ForceSendFields will be sent to the server regardless of whether the 420 // field is empty or not. This may be used to include empty fields in 421 // Patch requests. 422 ForceSendFields []string `json:"-"` 423 424 // NullFields is a list of field names (e.g. 425 // "AutoRegressiveCoefficients") to include in API requests with the 426 // JSON null value. By default, fields with empty values are omitted 427 // from API requests. However, any field with an empty value appearing 428 // in NullFields will be sent to the server as null. It is an error if a 429 // field in this list has a non-empty value. This may be used to include 430 // null fields in Patch requests. 431 NullFields []string `json:"-"` 432} 433 434func (s *ArimaCoefficients) MarshalJSON() ([]byte, error) { 435 type NoMethod ArimaCoefficients 436 raw := NoMethod(*s) 437 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 438} 439 440func (s *ArimaCoefficients) UnmarshalJSON(data []byte) error { 441 type NoMethod ArimaCoefficients 442 var s1 struct { 443 InterceptCoefficient gensupport.JSONFloat64 `json:"interceptCoefficient"` 444 *NoMethod 445 } 446 s1.NoMethod = (*NoMethod)(s) 447 if err := json.Unmarshal(data, &s1); err != nil { 448 return err 449 } 450 s.InterceptCoefficient = float64(s1.InterceptCoefficient) 451 return nil 452} 453 454// ArimaFittingMetrics: ARIMA model fitting metrics. 455type ArimaFittingMetrics struct { 456 // Aic: AIC. 457 Aic float64 `json:"aic,omitempty"` 458 459 // LogLikelihood: Log-likelihood. 460 LogLikelihood float64 `json:"logLikelihood,omitempty"` 461 462 // Variance: Variance. 463 Variance float64 `json:"variance,omitempty"` 464 465 // ForceSendFields is a list of field names (e.g. "Aic") to 466 // unconditionally include in API requests. By default, fields with 467 // empty values are omitted from API requests. However, any non-pointer, 468 // non-interface field appearing in ForceSendFields will be sent to the 469 // server regardless of whether the field is empty or not. This may be 470 // used to include empty fields in Patch requests. 471 ForceSendFields []string `json:"-"` 472 473 // NullFields is a list of field names (e.g. "Aic") to include in API 474 // requests with the JSON null value. By default, fields with empty 475 // values are omitted from API requests. However, any field with an 476 // empty value appearing in NullFields will be sent to the server as 477 // null. It is an error if a field in this list has a non-empty value. 478 // This may be used to include null fields in Patch requests. 479 NullFields []string `json:"-"` 480} 481 482func (s *ArimaFittingMetrics) MarshalJSON() ([]byte, error) { 483 type NoMethod ArimaFittingMetrics 484 raw := NoMethod(*s) 485 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 486} 487 488func (s *ArimaFittingMetrics) UnmarshalJSON(data []byte) error { 489 type NoMethod ArimaFittingMetrics 490 var s1 struct { 491 Aic gensupport.JSONFloat64 `json:"aic"` 492 LogLikelihood gensupport.JSONFloat64 `json:"logLikelihood"` 493 Variance gensupport.JSONFloat64 `json:"variance"` 494 *NoMethod 495 } 496 s1.NoMethod = (*NoMethod)(s) 497 if err := json.Unmarshal(data, &s1); err != nil { 498 return err 499 } 500 s.Aic = float64(s1.Aic) 501 s.LogLikelihood = float64(s1.LogLikelihood) 502 s.Variance = float64(s1.Variance) 503 return nil 504} 505 506// ArimaForecastingMetrics: Model evaluation metrics for ARIMA 507// forecasting models. 508type ArimaForecastingMetrics struct { 509 // ArimaFittingMetrics: Arima model fitting metrics. 510 ArimaFittingMetrics []*ArimaFittingMetrics `json:"arimaFittingMetrics,omitempty"` 511 512 // ArimaSingleModelForecastingMetrics: Repeated as there can be many 513 // metric sets (one for each model) in auto-arima and the large-scale 514 // case. 515 ArimaSingleModelForecastingMetrics []*ArimaSingleModelForecastingMetrics `json:"arimaSingleModelForecastingMetrics,omitempty"` 516 517 // HasDrift: Whether Arima model fitted with drift or not. It is always 518 // false when d is not 1. 519 HasDrift []bool `json:"hasDrift,omitempty"` 520 521 // NonSeasonalOrder: Non-seasonal order. 522 NonSeasonalOrder []*ArimaOrder `json:"nonSeasonalOrder,omitempty"` 523 524 // SeasonalPeriods: Seasonal periods. Repeated because multiple periods 525 // are supported for one time series. 526 // 527 // Possible values: 528 // "SEASONAL_PERIOD_TYPE_UNSPECIFIED" 529 // "NO_SEASONALITY" - No seasonality 530 // "DAILY" - Daily period, 24 hours. 531 // "WEEKLY" - Weekly period, 7 days. 532 // "MONTHLY" - Monthly period, 30 days or irregular. 533 // "QUARTERLY" - Quarterly period, 90 days or irregular. 534 // "YEARLY" - Yearly period, 365 days or irregular. 535 SeasonalPeriods []string `json:"seasonalPeriods,omitempty"` 536 537 // TimeSeriesId: Id to differentiate different time series for the 538 // large-scale case. 539 TimeSeriesId []string `json:"timeSeriesId,omitempty"` 540 541 // ForceSendFields is a list of field names (e.g. "ArimaFittingMetrics") 542 // to unconditionally include in API requests. By default, fields with 543 // empty values are omitted from API requests. However, any non-pointer, 544 // non-interface field appearing in ForceSendFields will be sent to the 545 // server regardless of whether the field is empty or not. This may be 546 // used to include empty fields in Patch requests. 547 ForceSendFields []string `json:"-"` 548 549 // NullFields is a list of field names (e.g. "ArimaFittingMetrics") to 550 // include in API requests with the JSON null value. By default, fields 551 // with empty values are omitted from API requests. However, any field 552 // with an empty value appearing in NullFields will be sent to the 553 // server as null. It is an error if a field in this list has a 554 // non-empty value. This may be used to include null fields in Patch 555 // requests. 556 NullFields []string `json:"-"` 557} 558 559func (s *ArimaForecastingMetrics) MarshalJSON() ([]byte, error) { 560 type NoMethod ArimaForecastingMetrics 561 raw := NoMethod(*s) 562 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 563} 564 565// ArimaModelInfo: Arima model information. 566type ArimaModelInfo struct { 567 // ArimaCoefficients: Arima coefficients. 568 ArimaCoefficients *ArimaCoefficients `json:"arimaCoefficients,omitempty"` 569 570 // ArimaFittingMetrics: Arima fitting metrics. 571 ArimaFittingMetrics *ArimaFittingMetrics `json:"arimaFittingMetrics,omitempty"` 572 573 // HasDrift: Whether Arima model fitted with drift or not. It is always 574 // false when d is not 1. 575 HasDrift bool `json:"hasDrift,omitempty"` 576 577 // HasHolidayEffect: If true, holiday_effect is a part of time series 578 // decomposition result. 579 HasHolidayEffect bool `json:"hasHolidayEffect,omitempty"` 580 581 // HasSpikesAndDips: If true, spikes_and_dips is a part of time series 582 // decomposition result. 583 HasSpikesAndDips bool `json:"hasSpikesAndDips,omitempty"` 584 585 // HasStepChanges: If true, step_changes is a part of time series 586 // decomposition result. 587 HasStepChanges bool `json:"hasStepChanges,omitempty"` 588 589 // NonSeasonalOrder: Non-seasonal order. 590 NonSeasonalOrder *ArimaOrder `json:"nonSeasonalOrder,omitempty"` 591 592 // SeasonalPeriods: Seasonal periods. Repeated because multiple periods 593 // are supported for one time series. 594 // 595 // Possible values: 596 // "SEASONAL_PERIOD_TYPE_UNSPECIFIED" 597 // "NO_SEASONALITY" - No seasonality 598 // "DAILY" - Daily period, 24 hours. 599 // "WEEKLY" - Weekly period, 7 days. 600 // "MONTHLY" - Monthly period, 30 days or irregular. 601 // "QUARTERLY" - Quarterly period, 90 days or irregular. 602 // "YEARLY" - Yearly period, 365 days or irregular. 603 SeasonalPeriods []string `json:"seasonalPeriods,omitempty"` 604 605 // TimeSeriesId: The time_series_id value for this time series. It will 606 // be one of the unique values from the time_series_id_column specified 607 // during ARIMA model training. Only present when time_series_id_column 608 // training option was used. 609 TimeSeriesId string `json:"timeSeriesId,omitempty"` 610 611 // TimeSeriesIds: The tuple of time_series_ids identifying this time 612 // series. It will be one of the unique tuples of values present in the 613 // time_series_id_columns specified during ARIMA model training. Only 614 // present when time_series_id_columns training option was used and the 615 // order of values here are same as the order of time_series_id_columns. 616 TimeSeriesIds []string `json:"timeSeriesIds,omitempty"` 617 618 // ForceSendFields is a list of field names (e.g. "ArimaCoefficients") 619 // to unconditionally include in API requests. By default, fields with 620 // empty values are omitted from API requests. However, any non-pointer, 621 // non-interface field appearing in ForceSendFields will be sent to the 622 // server regardless of whether the field is empty or not. This may be 623 // used to include empty fields in Patch requests. 624 ForceSendFields []string `json:"-"` 625 626 // NullFields is a list of field names (e.g. "ArimaCoefficients") to 627 // include in API requests with the JSON null value. By default, fields 628 // with empty values are omitted from API requests. However, any field 629 // with an empty value appearing in NullFields will be sent to the 630 // server as null. It is an error if a field in this list has a 631 // non-empty value. This may be used to include null fields in Patch 632 // requests. 633 NullFields []string `json:"-"` 634} 635 636func (s *ArimaModelInfo) MarshalJSON() ([]byte, error) { 637 type NoMethod ArimaModelInfo 638 raw := NoMethod(*s) 639 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 640} 641 642// ArimaOrder: Arima order, can be used for both non-seasonal and 643// seasonal parts. 644type ArimaOrder struct { 645 // D: Order of the differencing part. 646 D int64 `json:"d,omitempty,string"` 647 648 // P: Order of the autoregressive part. 649 P int64 `json:"p,omitempty,string"` 650 651 // Q: Order of the moving-average part. 652 Q int64 `json:"q,omitempty,string"` 653 654 // ForceSendFields is a list of field names (e.g. "D") to 655 // unconditionally include in API requests. By default, fields with 656 // empty values are omitted from API requests. However, any non-pointer, 657 // non-interface field appearing in ForceSendFields will be sent to the 658 // server regardless of whether the field is empty or not. This may be 659 // used to include empty fields in Patch requests. 660 ForceSendFields []string `json:"-"` 661 662 // NullFields is a list of field names (e.g. "D") to include in API 663 // requests with the JSON null value. By default, fields with empty 664 // values are omitted from API requests. However, any field with an 665 // empty value appearing in NullFields will be sent to the server as 666 // null. It is an error if a field in this list has a non-empty value. 667 // This may be used to include null fields in Patch requests. 668 NullFields []string `json:"-"` 669} 670 671func (s *ArimaOrder) MarshalJSON() ([]byte, error) { 672 type NoMethod ArimaOrder 673 raw := NoMethod(*s) 674 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 675} 676 677// ArimaResult: (Auto-)arima fitting result. Wrap everything in 678// ArimaResult for easier refactoring if we want to use model-specific 679// iteration results. 680type ArimaResult struct { 681 // ArimaModelInfo: This message is repeated because there are multiple 682 // arima models fitted in auto-arima. For non-auto-arima model, its size 683 // is one. 684 ArimaModelInfo []*ArimaModelInfo `json:"arimaModelInfo,omitempty"` 685 686 // SeasonalPeriods: Seasonal periods. Repeated because multiple periods 687 // are supported for one time series. 688 // 689 // Possible values: 690 // "SEASONAL_PERIOD_TYPE_UNSPECIFIED" 691 // "NO_SEASONALITY" - No seasonality 692 // "DAILY" - Daily period, 24 hours. 693 // "WEEKLY" - Weekly period, 7 days. 694 // "MONTHLY" - Monthly period, 30 days or irregular. 695 // "QUARTERLY" - Quarterly period, 90 days or irregular. 696 // "YEARLY" - Yearly period, 365 days or irregular. 697 SeasonalPeriods []string `json:"seasonalPeriods,omitempty"` 698 699 // ForceSendFields is a list of field names (e.g. "ArimaModelInfo") to 700 // unconditionally include in API requests. By default, fields with 701 // empty values are omitted from API requests. However, any non-pointer, 702 // non-interface field appearing in ForceSendFields will be sent to the 703 // server regardless of whether the field is empty or not. This may be 704 // used to include empty fields in Patch requests. 705 ForceSendFields []string `json:"-"` 706 707 // NullFields is a list of field names (e.g. "ArimaModelInfo") to 708 // include in API requests with the JSON null value. By default, fields 709 // with empty values are omitted from API requests. However, any field 710 // with an empty value appearing in NullFields will be sent to the 711 // server as null. It is an error if a field in this list has a 712 // non-empty value. This may be used to include null fields in Patch 713 // requests. 714 NullFields []string `json:"-"` 715} 716 717func (s *ArimaResult) MarshalJSON() ([]byte, error) { 718 type NoMethod ArimaResult 719 raw := NoMethod(*s) 720 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 721} 722 723// ArimaSingleModelForecastingMetrics: Model evaluation metrics for a 724// single ARIMA forecasting model. 725type ArimaSingleModelForecastingMetrics struct { 726 // ArimaFittingMetrics: Arima fitting metrics. 727 ArimaFittingMetrics *ArimaFittingMetrics `json:"arimaFittingMetrics,omitempty"` 728 729 // HasDrift: Is arima model fitted with drift or not. It is always false 730 // when d is not 1. 731 HasDrift bool `json:"hasDrift,omitempty"` 732 733 // HasHolidayEffect: If true, holiday_effect is a part of time series 734 // decomposition result. 735 HasHolidayEffect bool `json:"hasHolidayEffect,omitempty"` 736 737 // HasSpikesAndDips: If true, spikes_and_dips is a part of time series 738 // decomposition result. 739 HasSpikesAndDips bool `json:"hasSpikesAndDips,omitempty"` 740 741 // HasStepChanges: If true, step_changes is a part of time series 742 // decomposition result. 743 HasStepChanges bool `json:"hasStepChanges,omitempty"` 744 745 // NonSeasonalOrder: Non-seasonal order. 746 NonSeasonalOrder *ArimaOrder `json:"nonSeasonalOrder,omitempty"` 747 748 // SeasonalPeriods: Seasonal periods. Repeated because multiple periods 749 // are supported for one time series. 750 // 751 // Possible values: 752 // "SEASONAL_PERIOD_TYPE_UNSPECIFIED" 753 // "NO_SEASONALITY" - No seasonality 754 // "DAILY" - Daily period, 24 hours. 755 // "WEEKLY" - Weekly period, 7 days. 756 // "MONTHLY" - Monthly period, 30 days or irregular. 757 // "QUARTERLY" - Quarterly period, 90 days or irregular. 758 // "YEARLY" - Yearly period, 365 days or irregular. 759 SeasonalPeriods []string `json:"seasonalPeriods,omitempty"` 760 761 // TimeSeriesId: The time_series_id value for this time series. It will 762 // be one of the unique values from the time_series_id_column specified 763 // during ARIMA model training. Only present when time_series_id_column 764 // training option was used. 765 TimeSeriesId string `json:"timeSeriesId,omitempty"` 766 767 // TimeSeriesIds: The tuple of time_series_ids identifying this time 768 // series. It will be one of the unique tuples of values present in the 769 // time_series_id_columns specified during ARIMA model training. Only 770 // present when time_series_id_columns training option was used and the 771 // order of values here are same as the order of time_series_id_columns. 772 TimeSeriesIds []string `json:"timeSeriesIds,omitempty"` 773 774 // ForceSendFields is a list of field names (e.g. "ArimaFittingMetrics") 775 // to unconditionally include in API requests. By default, fields with 776 // empty values are omitted from API requests. However, any non-pointer, 777 // non-interface field appearing in ForceSendFields will be sent to the 778 // server regardless of whether the field is empty or not. This may be 779 // used to include empty fields in Patch requests. 780 ForceSendFields []string `json:"-"` 781 782 // NullFields is a list of field names (e.g. "ArimaFittingMetrics") to 783 // include in API requests with the JSON null value. By default, fields 784 // with empty values are omitted from API requests. However, any field 785 // with an empty value appearing in NullFields will be sent to the 786 // server as null. It is an error if a field in this list has a 787 // non-empty value. This may be used to include null fields in Patch 788 // requests. 789 NullFields []string `json:"-"` 790} 791 792func (s *ArimaSingleModelForecastingMetrics) MarshalJSON() ([]byte, error) { 793 type NoMethod ArimaSingleModelForecastingMetrics 794 raw := NoMethod(*s) 795 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 796} 797 798// AuditConfig: Specifies the audit configuration for a service. The 799// configuration determines which permission types are logged, and what 800// identities, if any, are exempted from logging. An AuditConfig must 801// have one or more AuditLogConfigs. If there are AuditConfigs for both 802// `allServices` and a specific service, the union of the two 803// AuditConfigs is used for that service: the log_types specified in 804// each AuditConfig are enabled, and the exempted_members in each 805// AuditLogConfig are exempted. Example Policy with multiple 806// AuditConfigs: { "audit_configs": [ { "service": "allServices", 807// "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": 808// [ "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { 809// "log_type": "ADMIN_READ" } ] }, { "service": 810// "sampleservice.googleapis.com", "audit_log_configs": [ { "log_type": 811// "DATA_READ" }, { "log_type": "DATA_WRITE", "exempted_members": [ 812// "user:aliya@example.com" ] } ] } ] } For sampleservice, this policy 813// enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts 814// jose@example.com from DATA_READ logging, and aliya@example.com from 815// DATA_WRITE logging. 816type AuditConfig struct { 817 // AuditLogConfigs: The configuration for logging of each type of 818 // permission. 819 AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` 820 821 // Service: Specifies a service that will be enabled for audit logging. 822 // For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. 823 // `allServices` is a special value that covers all services. 824 Service string `json:"service,omitempty"` 825 826 // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to 827 // unconditionally include in API requests. By default, fields with 828 // empty values are omitted from API requests. However, any non-pointer, 829 // non-interface field appearing in ForceSendFields will be sent to the 830 // server regardless of whether the field is empty or not. This may be 831 // used to include empty fields in Patch requests. 832 ForceSendFields []string `json:"-"` 833 834 // NullFields is a list of field names (e.g. "AuditLogConfigs") to 835 // include in API requests with the JSON null value. By default, fields 836 // with empty values are omitted from API requests. However, any field 837 // with an empty value appearing in NullFields will be sent to the 838 // server as null. It is an error if a field in this list has a 839 // non-empty value. This may be used to include null fields in Patch 840 // requests. 841 NullFields []string `json:"-"` 842} 843 844func (s *AuditConfig) MarshalJSON() ([]byte, error) { 845 type NoMethod AuditConfig 846 raw := NoMethod(*s) 847 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 848} 849 850// AuditLogConfig: Provides the configuration for logging a type of 851// permissions. Example: { "audit_log_configs": [ { "log_type": 852// "DATA_READ", "exempted_members": [ "user:jose@example.com" ] }, { 853// "log_type": "DATA_WRITE" } ] } This enables 'DATA_READ' and 854// 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ 855// logging. 856type AuditLogConfig struct { 857 // ExemptedMembers: Specifies the identities that do not cause logging 858 // for this type of permission. Follows the same format of 859 // Binding.members. 860 ExemptedMembers []string `json:"exemptedMembers,omitempty"` 861 862 // LogType: The log type that this config enables. 863 // 864 // Possible values: 865 // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. 866 // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy 867 // "DATA_WRITE" - Data writes. Example: CloudSQL Users create 868 // "DATA_READ" - Data reads. Example: CloudSQL Users list 869 LogType string `json:"logType,omitempty"` 870 871 // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to 872 // unconditionally include in API requests. By default, fields with 873 // empty values are omitted from API requests. However, any non-pointer, 874 // non-interface field appearing in ForceSendFields will be sent to the 875 // server regardless of whether the field is empty or not. This may be 876 // used to include empty fields in Patch requests. 877 ForceSendFields []string `json:"-"` 878 879 // NullFields is a list of field names (e.g. "ExemptedMembers") to 880 // include in API requests with the JSON null value. By default, fields 881 // with empty values are omitted from API requests. However, any field 882 // with an empty value appearing in NullFields will be sent to the 883 // server as null. It is an error if a field in this list has a 884 // non-empty value. This may be used to include null fields in Patch 885 // requests. 886 NullFields []string `json:"-"` 887} 888 889func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { 890 type NoMethod AuditLogConfig 891 raw := NoMethod(*s) 892 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 893} 894 895type BigQueryModelTraining struct { 896 // CurrentIteration: [Output-only, Beta] Index of current ML training 897 // iteration. Updated during create model query job to show job 898 // progress. 899 CurrentIteration int64 `json:"currentIteration,omitempty"` 900 901 // ExpectedTotalIterations: [Output-only, Beta] Expected number of 902 // iterations for the create model query job specified as num_iterations 903 // in the input query. The actual total number of iterations may be less 904 // than this number due to early stop. 905 ExpectedTotalIterations int64 `json:"expectedTotalIterations,omitempty,string"` 906 907 // ForceSendFields is a list of field names (e.g. "CurrentIteration") to 908 // unconditionally include in API requests. By default, fields with 909 // empty values are omitted from API requests. However, any non-pointer, 910 // non-interface field appearing in ForceSendFields will be sent to the 911 // server regardless of whether the field is empty or not. This may be 912 // used to include empty fields in Patch requests. 913 ForceSendFields []string `json:"-"` 914 915 // NullFields is a list of field names (e.g. "CurrentIteration") to 916 // include in API requests with the JSON null value. By default, fields 917 // with empty values are omitted from API requests. However, any field 918 // with an empty value appearing in NullFields will be sent to the 919 // server as null. It is an error if a field in this list has a 920 // non-empty value. This may be used to include null fields in Patch 921 // requests. 922 NullFields []string `json:"-"` 923} 924 925func (s *BigQueryModelTraining) MarshalJSON() ([]byte, error) { 926 type NoMethod BigQueryModelTraining 927 raw := NoMethod(*s) 928 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 929} 930 931type BigtableColumn struct { 932 // Encoding: [Optional] The encoding of the values when the type is not 933 // STRING. Acceptable encoding values are: TEXT - indicates values are 934 // alphanumeric text strings. BINARY - indicates values are encoded 935 // using HBase Bytes.toBytes family of functions. 'encoding' can also be 936 // set at the column family level. However, the setting at this level 937 // takes precedence if 'encoding' is set at both levels. 938 Encoding string `json:"encoding,omitempty"` 939 940 // FieldName: [Optional] If the qualifier is not a valid BigQuery field 941 // identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid 942 // identifier must be provided as the column field name and is used as 943 // field name in queries. 944 FieldName string `json:"fieldName,omitempty"` 945 946 // OnlyReadLatest: [Optional] If this is set, only the latest version of 947 // value in this column are exposed. 'onlyReadLatest' can also be set at 948 // the column family level. However, the setting at this level takes 949 // precedence if 'onlyReadLatest' is set at both levels. 950 OnlyReadLatest bool `json:"onlyReadLatest,omitempty"` 951 952 // QualifierEncoded: [Required] Qualifier of the column. Columns in the 953 // parent column family that has this exact qualifier are exposed as . 954 // field. If the qualifier is valid UTF-8 string, it can be specified in 955 // the qualifier_string field. Otherwise, a base-64 encoded value must 956 // be set to qualifier_encoded. The column field name is the same as the 957 // column qualifier. However, if the qualifier is not a valid BigQuery 958 // field identifier i.e. does not match [a-zA-Z][a-zA-Z0-9_]*, a valid 959 // identifier must be provided as field_name. 960 QualifierEncoded string `json:"qualifierEncoded,omitempty"` 961 962 QualifierString string `json:"qualifierString,omitempty"` 963 964 // Type: [Optional] The type to convert the value in cells of this 965 // column. The values are expected to be encoded using HBase 966 // Bytes.toBytes function when using the BINARY encoding value. 967 // Following BigQuery types are allowed (case-sensitive) - BYTES STRING 968 // INTEGER FLOAT BOOLEAN Default type is BYTES. 'type' can also be set 969 // at the column family level. However, the setting at this level takes 970 // precedence if 'type' is set at both levels. 971 Type string `json:"type,omitempty"` 972 973 // ForceSendFields is a list of field names (e.g. "Encoding") to 974 // unconditionally include in API requests. By default, fields with 975 // empty values are omitted from API requests. However, any non-pointer, 976 // non-interface field appearing in ForceSendFields will be sent to the 977 // server regardless of whether the field is empty or not. This may be 978 // used to include empty fields in Patch requests. 979 ForceSendFields []string `json:"-"` 980 981 // NullFields is a list of field names (e.g. "Encoding") to include in 982 // API requests with the JSON null value. By default, fields with empty 983 // values are omitted from API requests. However, any field with an 984 // empty value appearing in NullFields will be sent to the server as 985 // null. It is an error if a field in this list has a non-empty value. 986 // This may be used to include null fields in Patch requests. 987 NullFields []string `json:"-"` 988} 989 990func (s *BigtableColumn) MarshalJSON() ([]byte, error) { 991 type NoMethod BigtableColumn 992 raw := NoMethod(*s) 993 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 994} 995 996type BigtableColumnFamily struct { 997 // Columns: [Optional] Lists of columns that should be exposed as 998 // individual fields as opposed to a list of (column name, value) pairs. 999 // All columns whose qualifier matches a qualifier in this list can be 1000 // accessed as .. Other columns can be accessed as a list through 1001 // .Column field. 1002 Columns []*BigtableColumn `json:"columns,omitempty"` 1003 1004 // Encoding: [Optional] The encoding of the values when the type is not 1005 // STRING. Acceptable encoding values are: TEXT - indicates values are 1006 // alphanumeric text strings. BINARY - indicates values are encoded 1007 // using HBase Bytes.toBytes family of functions. This can be overridden 1008 // for a specific column by listing that column in 'columns' and 1009 // specifying an encoding for it. 1010 Encoding string `json:"encoding,omitempty"` 1011 1012 // FamilyId: Identifier of the column family. 1013 FamilyId string `json:"familyId,omitempty"` 1014 1015 // OnlyReadLatest: [Optional] If this is set only the latest version of 1016 // value are exposed for all columns in this column family. This can be 1017 // overridden for a specific column by listing that column in 'columns' 1018 // and specifying a different setting for that column. 1019 OnlyReadLatest bool `json:"onlyReadLatest,omitempty"` 1020 1021 // Type: [Optional] The type to convert the value in cells of this 1022 // column family. The values are expected to be encoded using HBase 1023 // Bytes.toBytes function when using the BINARY encoding value. 1024 // Following BigQuery types are allowed (case-sensitive) - BYTES STRING 1025 // INTEGER FLOAT BOOLEAN Default type is BYTES. This can be overridden 1026 // for a specific column by listing that column in 'columns' and 1027 // specifying a type for it. 1028 Type string `json:"type,omitempty"` 1029 1030 // ForceSendFields is a list of field names (e.g. "Columns") to 1031 // unconditionally include in API requests. By default, fields with 1032 // empty values are omitted from API requests. However, any non-pointer, 1033 // non-interface field appearing in ForceSendFields will be sent to the 1034 // server regardless of whether the field is empty or not. This may be 1035 // used to include empty fields in Patch requests. 1036 ForceSendFields []string `json:"-"` 1037 1038 // NullFields is a list of field names (e.g. "Columns") to include in 1039 // API requests with the JSON null value. By default, fields with empty 1040 // values are omitted from API requests. However, any field with an 1041 // empty value appearing in NullFields will be sent to the server as 1042 // null. It is an error if a field in this list has a non-empty value. 1043 // This may be used to include null fields in Patch requests. 1044 NullFields []string `json:"-"` 1045} 1046 1047func (s *BigtableColumnFamily) MarshalJSON() ([]byte, error) { 1048 type NoMethod BigtableColumnFamily 1049 raw := NoMethod(*s) 1050 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1051} 1052 1053type BigtableOptions struct { 1054 // ColumnFamilies: [Optional] List of column families to expose in the 1055 // table schema along with their types. This list restricts the column 1056 // families that can be referenced in queries and specifies their value 1057 // types. You can use this list to do type conversions - see the 'type' 1058 // field for more details. If you leave this list empty, all column 1059 // families are present in the table schema and their values are read as 1060 // BYTES. During a query only the column families referenced in that 1061 // query are read from Bigtable. 1062 ColumnFamilies []*BigtableColumnFamily `json:"columnFamilies,omitempty"` 1063 1064 // IgnoreUnspecifiedColumnFamilies: [Optional] If field is true, then 1065 // the column families that are not specified in columnFamilies list are 1066 // not exposed in the table schema. Otherwise, they are read with BYTES 1067 // type values. The default value is false. 1068 IgnoreUnspecifiedColumnFamilies bool `json:"ignoreUnspecifiedColumnFamilies,omitempty"` 1069 1070 // ReadRowkeyAsString: [Optional] If field is true, then the rowkey 1071 // column families will be read and converted to string. Otherwise they 1072 // are read with BYTES type values and users need to manually cast them 1073 // with CAST if necessary. The default value is false. 1074 ReadRowkeyAsString bool `json:"readRowkeyAsString,omitempty"` 1075 1076 // ForceSendFields is a list of field names (e.g. "ColumnFamilies") to 1077 // unconditionally include in API requests. By default, fields with 1078 // empty values are omitted from API requests. However, any non-pointer, 1079 // non-interface field appearing in ForceSendFields will be sent to the 1080 // server regardless of whether the field is empty or not. This may be 1081 // used to include empty fields in Patch requests. 1082 ForceSendFields []string `json:"-"` 1083 1084 // NullFields is a list of field names (e.g. "ColumnFamilies") to 1085 // include in API requests with the JSON null value. By default, fields 1086 // with empty values are omitted from API requests. However, any field 1087 // with an empty value appearing in NullFields will be sent to the 1088 // server as null. It is an error if a field in this list has a 1089 // non-empty value. This may be used to include null fields in Patch 1090 // requests. 1091 NullFields []string `json:"-"` 1092} 1093 1094func (s *BigtableOptions) MarshalJSON() ([]byte, error) { 1095 type NoMethod BigtableOptions 1096 raw := NoMethod(*s) 1097 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1098} 1099 1100// BinaryClassificationMetrics: Evaluation metrics for binary 1101// classification/classifier models. 1102type BinaryClassificationMetrics struct { 1103 // AggregateClassificationMetrics: Aggregate classification metrics. 1104 AggregateClassificationMetrics *AggregateClassificationMetrics `json:"aggregateClassificationMetrics,omitempty"` 1105 1106 // BinaryConfusionMatrixList: Binary confusion matrix at multiple 1107 // thresholds. 1108 BinaryConfusionMatrixList []*BinaryConfusionMatrix `json:"binaryConfusionMatrixList,omitempty"` 1109 1110 // NegativeLabel: Label representing the negative class. 1111 NegativeLabel string `json:"negativeLabel,omitempty"` 1112 1113 // PositiveLabel: Label representing the positive class. 1114 PositiveLabel string `json:"positiveLabel,omitempty"` 1115 1116 // ForceSendFields is a list of field names (e.g. 1117 // "AggregateClassificationMetrics") to unconditionally include in API 1118 // requests. By default, fields with empty values are omitted from API 1119 // requests. However, any non-pointer, non-interface field appearing in 1120 // ForceSendFields will be sent to the server regardless of whether the 1121 // field is empty or not. This may be used to include empty fields in 1122 // Patch requests. 1123 ForceSendFields []string `json:"-"` 1124 1125 // NullFields is a list of field names (e.g. 1126 // "AggregateClassificationMetrics") to include in API requests with the 1127 // JSON null value. By default, fields with empty values are omitted 1128 // from API requests. However, any field with an empty value appearing 1129 // in NullFields will be sent to the server as null. It is an error if a 1130 // field in this list has a non-empty value. This may be used to include 1131 // null fields in Patch requests. 1132 NullFields []string `json:"-"` 1133} 1134 1135func (s *BinaryClassificationMetrics) MarshalJSON() ([]byte, error) { 1136 type NoMethod BinaryClassificationMetrics 1137 raw := NoMethod(*s) 1138 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1139} 1140 1141// BinaryConfusionMatrix: Confusion matrix for binary classification 1142// models. 1143type BinaryConfusionMatrix struct { 1144 // Accuracy: The fraction of predictions given the correct label. 1145 Accuracy float64 `json:"accuracy,omitempty"` 1146 1147 // F1Score: The equally weighted average of recall and precision. 1148 F1Score float64 `json:"f1Score,omitempty"` 1149 1150 // FalseNegatives: Number of false samples predicted as false. 1151 FalseNegatives int64 `json:"falseNegatives,omitempty,string"` 1152 1153 // FalsePositives: Number of false samples predicted as true. 1154 FalsePositives int64 `json:"falsePositives,omitempty,string"` 1155 1156 // PositiveClassThreshold: Threshold value used when computing each of 1157 // the following metric. 1158 PositiveClassThreshold float64 `json:"positiveClassThreshold,omitempty"` 1159 1160 // Precision: The fraction of actual positive predictions that had 1161 // positive actual labels. 1162 Precision float64 `json:"precision,omitempty"` 1163 1164 // Recall: The fraction of actual positive labels that were given a 1165 // positive prediction. 1166 Recall float64 `json:"recall,omitempty"` 1167 1168 // TrueNegatives: Number of true samples predicted as false. 1169 TrueNegatives int64 `json:"trueNegatives,omitempty,string"` 1170 1171 // TruePositives: Number of true samples predicted as true. 1172 TruePositives int64 `json:"truePositives,omitempty,string"` 1173 1174 // ForceSendFields is a list of field names (e.g. "Accuracy") to 1175 // unconditionally include in API requests. By default, fields with 1176 // empty values are omitted from API requests. However, any non-pointer, 1177 // non-interface field appearing in ForceSendFields will be sent to the 1178 // server regardless of whether the field is empty or not. This may be 1179 // used to include empty fields in Patch requests. 1180 ForceSendFields []string `json:"-"` 1181 1182 // NullFields is a list of field names (e.g. "Accuracy") to include in 1183 // API requests with the JSON null value. By default, fields with empty 1184 // values are omitted from API requests. However, any field with an 1185 // empty value appearing in NullFields will be sent to the server as 1186 // null. It is an error if a field in this list has a non-empty value. 1187 // This may be used to include null fields in Patch requests. 1188 NullFields []string `json:"-"` 1189} 1190 1191func (s *BinaryConfusionMatrix) MarshalJSON() ([]byte, error) { 1192 type NoMethod BinaryConfusionMatrix 1193 raw := NoMethod(*s) 1194 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1195} 1196 1197func (s *BinaryConfusionMatrix) UnmarshalJSON(data []byte) error { 1198 type NoMethod BinaryConfusionMatrix 1199 var s1 struct { 1200 Accuracy gensupport.JSONFloat64 `json:"accuracy"` 1201 F1Score gensupport.JSONFloat64 `json:"f1Score"` 1202 PositiveClassThreshold gensupport.JSONFloat64 `json:"positiveClassThreshold"` 1203 Precision gensupport.JSONFloat64 `json:"precision"` 1204 Recall gensupport.JSONFloat64 `json:"recall"` 1205 *NoMethod 1206 } 1207 s1.NoMethod = (*NoMethod)(s) 1208 if err := json.Unmarshal(data, &s1); err != nil { 1209 return err 1210 } 1211 s.Accuracy = float64(s1.Accuracy) 1212 s.F1Score = float64(s1.F1Score) 1213 s.PositiveClassThreshold = float64(s1.PositiveClassThreshold) 1214 s.Precision = float64(s1.Precision) 1215 s.Recall = float64(s1.Recall) 1216 return nil 1217} 1218 1219// Binding: Associates `members` with a `role`. 1220type Binding struct { 1221 // Condition: The condition that is associated with this binding. If the 1222 // condition evaluates to `true`, then this binding applies to the 1223 // current request. If the condition evaluates to `false`, then this 1224 // binding does not apply to the current request. However, a different 1225 // role binding might grant the same role to one or more of the members 1226 // in this binding. To learn which resources support conditions in their 1227 // IAM policies, see the IAM documentation 1228 // (https://cloud.google.com/iam/help/conditions/resource-policies). 1229 Condition *Expr `json:"condition,omitempty"` 1230 1231 // Members: Specifies the identities requesting access for a Cloud 1232 // Platform resource. `members` can have the following values: * 1233 // `allUsers`: A special identifier that represents anyone who is on the 1234 // internet; with or without a Google account. * 1235 // `allAuthenticatedUsers`: A special identifier that represents anyone 1236 // who is authenticated with a Google account or a service account. * 1237 // `user:{emailid}`: An email address that represents a specific Google 1238 // account. For example, `alice@example.com` . * 1239 // `serviceAccount:{emailid}`: An email address that represents a 1240 // service account. For example, 1241 // `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An 1242 // email address that represents a Google group. For example, 1243 // `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An 1244 // email address (plus unique identifier) representing a user that has 1245 // been recently deleted. For example, 1246 // `alice@example.com?uid=123456789012345678901`. If the user is 1247 // recovered, this value reverts to `user:{emailid}` and the recovered 1248 // user retains the role in the binding. * 1249 // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address 1250 // (plus unique identifier) representing a service account that has been 1251 // recently deleted. For example, 1252 // `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. 1253 // If the service account is undeleted, this value reverts to 1254 // `serviceAccount:{emailid}` and the undeleted service account retains 1255 // the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: 1256 // An email address (plus unique identifier) representing a Google group 1257 // that has been recently deleted. For example, 1258 // `admins@example.com?uid=123456789012345678901`. If the group is 1259 // recovered, this value reverts to `group:{emailid}` and the recovered 1260 // group retains the role in the binding. * `domain:{domain}`: The G 1261 // Suite domain (primary) that represents all the users of that domain. 1262 // For example, `google.com` or `example.com`. 1263 Members []string `json:"members,omitempty"` 1264 1265 // Role: Role that is assigned to `members`. For example, 1266 // `roles/viewer`, `roles/editor`, or `roles/owner`. 1267 Role string `json:"role,omitempty"` 1268 1269 // ForceSendFields is a list of field names (e.g. "Condition") to 1270 // unconditionally include in API requests. By default, fields with 1271 // empty values are omitted from API requests. However, any non-pointer, 1272 // non-interface field appearing in ForceSendFields will be sent to the 1273 // server regardless of whether the field is empty or not. This may be 1274 // used to include empty fields in Patch requests. 1275 ForceSendFields []string `json:"-"` 1276 1277 // NullFields is a list of field names (e.g. "Condition") to include in 1278 // API requests with the JSON null value. By default, fields with empty 1279 // values are omitted from API requests. However, any field with an 1280 // empty value appearing in NullFields will be sent to the server as 1281 // null. It is an error if a field in this list has a non-empty value. 1282 // This may be used to include null fields in Patch requests. 1283 NullFields []string `json:"-"` 1284} 1285 1286func (s *Binding) MarshalJSON() ([]byte, error) { 1287 type NoMethod Binding 1288 raw := NoMethod(*s) 1289 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1290} 1291 1292type BqmlIterationResult struct { 1293 // DurationMs: [Output-only, Beta] Time taken to run the training 1294 // iteration in milliseconds. 1295 DurationMs int64 `json:"durationMs,omitempty,string"` 1296 1297 // EvalLoss: [Output-only, Beta] Eval loss computed on the eval data at 1298 // the end of the iteration. The eval loss is used for early stopping to 1299 // avoid overfitting. No eval loss if eval_split_method option is 1300 // specified as no_split or auto_split with input data size less than 1301 // 500 rows. 1302 EvalLoss float64 `json:"evalLoss,omitempty"` 1303 1304 // Index: [Output-only, Beta] Index of the ML training iteration, 1305 // starting from zero for each training run. 1306 Index int64 `json:"index,omitempty"` 1307 1308 // LearnRate: [Output-only, Beta] Learning rate used for this iteration, 1309 // it varies for different training iterations if learn_rate_strategy 1310 // option is not constant. 1311 LearnRate float64 `json:"learnRate,omitempty"` 1312 1313 // TrainingLoss: [Output-only, Beta] Training loss computed on the 1314 // training data at the end of the iteration. The training loss function 1315 // is defined by model type. 1316 TrainingLoss float64 `json:"trainingLoss,omitempty"` 1317 1318 // ForceSendFields is a list of field names (e.g. "DurationMs") to 1319 // unconditionally include in API requests. By default, fields with 1320 // empty values are omitted from API requests. However, any non-pointer, 1321 // non-interface field appearing in ForceSendFields will be sent to the 1322 // server regardless of whether the field is empty or not. This may be 1323 // used to include empty fields in Patch requests. 1324 ForceSendFields []string `json:"-"` 1325 1326 // NullFields is a list of field names (e.g. "DurationMs") to include in 1327 // API requests with the JSON null value. By default, fields with empty 1328 // values are omitted from API requests. However, any field with an 1329 // empty value appearing in NullFields will be sent to the server as 1330 // null. It is an error if a field in this list has a non-empty value. 1331 // This may be used to include null fields in Patch requests. 1332 NullFields []string `json:"-"` 1333} 1334 1335func (s *BqmlIterationResult) MarshalJSON() ([]byte, error) { 1336 type NoMethod BqmlIterationResult 1337 raw := NoMethod(*s) 1338 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1339} 1340 1341func (s *BqmlIterationResult) UnmarshalJSON(data []byte) error { 1342 type NoMethod BqmlIterationResult 1343 var s1 struct { 1344 EvalLoss gensupport.JSONFloat64 `json:"evalLoss"` 1345 LearnRate gensupport.JSONFloat64 `json:"learnRate"` 1346 TrainingLoss gensupport.JSONFloat64 `json:"trainingLoss"` 1347 *NoMethod 1348 } 1349 s1.NoMethod = (*NoMethod)(s) 1350 if err := json.Unmarshal(data, &s1); err != nil { 1351 return err 1352 } 1353 s.EvalLoss = float64(s1.EvalLoss) 1354 s.LearnRate = float64(s1.LearnRate) 1355 s.TrainingLoss = float64(s1.TrainingLoss) 1356 return nil 1357} 1358 1359type BqmlTrainingRun struct { 1360 // IterationResults: [Output-only, Beta] List of each iteration results. 1361 IterationResults []*BqmlIterationResult `json:"iterationResults,omitempty"` 1362 1363 // StartTime: [Output-only, Beta] Training run start time in 1364 // milliseconds since the epoch. 1365 StartTime string `json:"startTime,omitempty"` 1366 1367 // State: [Output-only, Beta] Different state applicable for a training 1368 // run. IN PROGRESS: Training run is in progress. FAILED: Training run 1369 // ended due to a non-retryable failure. SUCCEEDED: Training run 1370 // successfully completed. CANCELLED: Training run cancelled by the 1371 // user. 1372 State string `json:"state,omitempty"` 1373 1374 // TrainingOptions: [Output-only, Beta] Training options used by this 1375 // training run. These options are mutable for subsequent training runs. 1376 // Default values are explicitly stored for options not specified in the 1377 // input query of the first training run. For subsequent training runs, 1378 // any option not explicitly specified in the input query will be copied 1379 // from the previous training run. 1380 TrainingOptions *BqmlTrainingRunTrainingOptions `json:"trainingOptions,omitempty"` 1381 1382 // ForceSendFields is a list of field names (e.g. "IterationResults") to 1383 // unconditionally include in API requests. By default, fields with 1384 // empty values are omitted from API requests. However, any non-pointer, 1385 // non-interface field appearing in ForceSendFields will be sent to the 1386 // server regardless of whether the field is empty or not. This may be 1387 // used to include empty fields in Patch requests. 1388 ForceSendFields []string `json:"-"` 1389 1390 // NullFields is a list of field names (e.g. "IterationResults") to 1391 // include in API requests with the JSON null value. By default, fields 1392 // with empty values are omitted from API requests. However, any field 1393 // with an empty value appearing in NullFields will be sent to the 1394 // server as null. It is an error if a field in this list has a 1395 // non-empty value. This may be used to include null fields in Patch 1396 // requests. 1397 NullFields []string `json:"-"` 1398} 1399 1400func (s *BqmlTrainingRun) MarshalJSON() ([]byte, error) { 1401 type NoMethod BqmlTrainingRun 1402 raw := NoMethod(*s) 1403 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1404} 1405 1406// BqmlTrainingRunTrainingOptions: [Output-only, Beta] Training options 1407// used by this training run. These options are mutable for subsequent 1408// training runs. Default values are explicitly stored for options not 1409// specified in the input query of the first training run. For 1410// subsequent training runs, any option not explicitly specified in the 1411// input query will be copied from the previous training run. 1412type BqmlTrainingRunTrainingOptions struct { 1413 EarlyStop bool `json:"earlyStop,omitempty"` 1414 1415 L1Reg float64 `json:"l1Reg,omitempty"` 1416 1417 L2Reg float64 `json:"l2Reg,omitempty"` 1418 1419 LearnRate float64 `json:"learnRate,omitempty"` 1420 1421 LearnRateStrategy string `json:"learnRateStrategy,omitempty"` 1422 1423 LineSearchInitLearnRate float64 `json:"lineSearchInitLearnRate,omitempty"` 1424 1425 MaxIteration int64 `json:"maxIteration,omitempty,string"` 1426 1427 MinRelProgress float64 `json:"minRelProgress,omitempty"` 1428 1429 WarmStart bool `json:"warmStart,omitempty"` 1430 1431 // ForceSendFields is a list of field names (e.g. "EarlyStop") to 1432 // unconditionally include in API requests. By default, fields with 1433 // empty values are omitted from API requests. However, any non-pointer, 1434 // non-interface field appearing in ForceSendFields will be sent to the 1435 // server regardless of whether the field is empty or not. This may be 1436 // used to include empty fields in Patch requests. 1437 ForceSendFields []string `json:"-"` 1438 1439 // NullFields is a list of field names (e.g. "EarlyStop") to include in 1440 // API requests with the JSON null value. By default, fields with empty 1441 // values are omitted from API requests. However, any field with an 1442 // empty value appearing in NullFields will be sent to the server as 1443 // null. It is an error if a field in this list has a non-empty value. 1444 // This may be used to include null fields in Patch requests. 1445 NullFields []string `json:"-"` 1446} 1447 1448func (s *BqmlTrainingRunTrainingOptions) MarshalJSON() ([]byte, error) { 1449 type NoMethod BqmlTrainingRunTrainingOptions 1450 raw := NoMethod(*s) 1451 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1452} 1453 1454func (s *BqmlTrainingRunTrainingOptions) UnmarshalJSON(data []byte) error { 1455 type NoMethod BqmlTrainingRunTrainingOptions 1456 var s1 struct { 1457 L1Reg gensupport.JSONFloat64 `json:"l1Reg"` 1458 L2Reg gensupport.JSONFloat64 `json:"l2Reg"` 1459 LearnRate gensupport.JSONFloat64 `json:"learnRate"` 1460 LineSearchInitLearnRate gensupport.JSONFloat64 `json:"lineSearchInitLearnRate"` 1461 MinRelProgress gensupport.JSONFloat64 `json:"minRelProgress"` 1462 *NoMethod 1463 } 1464 s1.NoMethod = (*NoMethod)(s) 1465 if err := json.Unmarshal(data, &s1); err != nil { 1466 return err 1467 } 1468 s.L1Reg = float64(s1.L1Reg) 1469 s.L2Reg = float64(s1.L2Reg) 1470 s.LearnRate = float64(s1.LearnRate) 1471 s.LineSearchInitLearnRate = float64(s1.LineSearchInitLearnRate) 1472 s.MinRelProgress = float64(s1.MinRelProgress) 1473 return nil 1474} 1475 1476// CategoricalValue: Representative value of a categorical feature. 1477type CategoricalValue struct { 1478 // CategoryCounts: Counts of all categories for the categorical feature. 1479 // If there are more than ten categories, we return top ten (by count) 1480 // and return one more CategoryCount with category "_OTHER_" and count 1481 // as aggregate counts of remaining categories. 1482 CategoryCounts []*CategoryCount `json:"categoryCounts,omitempty"` 1483 1484 // ForceSendFields is a list of field names (e.g. "CategoryCounts") to 1485 // unconditionally include in API requests. By default, fields with 1486 // empty values are omitted from API requests. However, any non-pointer, 1487 // non-interface field appearing in ForceSendFields will be sent to the 1488 // server regardless of whether the field is empty or not. This may be 1489 // used to include empty fields in Patch requests. 1490 ForceSendFields []string `json:"-"` 1491 1492 // NullFields is a list of field names (e.g. "CategoryCounts") to 1493 // include in API requests with the JSON null value. By default, fields 1494 // with empty values are omitted from API requests. However, any field 1495 // with an empty value appearing in NullFields will be sent to the 1496 // server as null. It is an error if a field in this list has a 1497 // non-empty value. This may be used to include null fields in Patch 1498 // requests. 1499 NullFields []string `json:"-"` 1500} 1501 1502func (s *CategoricalValue) MarshalJSON() ([]byte, error) { 1503 type NoMethod CategoricalValue 1504 raw := NoMethod(*s) 1505 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1506} 1507 1508// CategoryCount: Represents the count of a single category within the 1509// cluster. 1510type CategoryCount struct { 1511 // Category: The name of category. 1512 Category string `json:"category,omitempty"` 1513 1514 // Count: The count of training samples matching the category within the 1515 // cluster. 1516 Count int64 `json:"count,omitempty,string"` 1517 1518 // ForceSendFields is a list of field names (e.g. "Category") to 1519 // unconditionally include in API requests. By default, fields with 1520 // empty values are omitted from API requests. However, any non-pointer, 1521 // non-interface field appearing in ForceSendFields will be sent to the 1522 // server regardless of whether the field is empty or not. This may be 1523 // used to include empty fields in Patch requests. 1524 ForceSendFields []string `json:"-"` 1525 1526 // NullFields is a list of field names (e.g. "Category") to include in 1527 // API requests with the JSON null value. By default, fields with empty 1528 // values are omitted from API requests. However, any field with an 1529 // empty value appearing in NullFields will be sent to the server as 1530 // null. It is an error if a field in this list has a non-empty value. 1531 // This may be used to include null fields in Patch requests. 1532 NullFields []string `json:"-"` 1533} 1534 1535func (s *CategoryCount) MarshalJSON() ([]byte, error) { 1536 type NoMethod CategoryCount 1537 raw := NoMethod(*s) 1538 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1539} 1540 1541// Cluster: Message containing the information about one cluster. 1542type Cluster struct { 1543 // CentroidId: Centroid id. 1544 CentroidId int64 `json:"centroidId,omitempty,string"` 1545 1546 // Count: Count of training data rows that were assigned to this 1547 // cluster. 1548 Count int64 `json:"count,omitempty,string"` 1549 1550 // FeatureValues: Values of highly variant features for this cluster. 1551 FeatureValues []*FeatureValue `json:"featureValues,omitempty"` 1552 1553 // ForceSendFields is a list of field names (e.g. "CentroidId") to 1554 // unconditionally include in API requests. By default, fields with 1555 // empty values are omitted from API requests. However, any non-pointer, 1556 // non-interface field appearing in ForceSendFields will be sent to the 1557 // server regardless of whether the field is empty or not. This may be 1558 // used to include empty fields in Patch requests. 1559 ForceSendFields []string `json:"-"` 1560 1561 // NullFields is a list of field names (e.g. "CentroidId") to include in 1562 // API requests with the JSON null value. By default, fields with empty 1563 // values are omitted from API requests. However, any field with an 1564 // empty value appearing in NullFields will be sent to the server as 1565 // null. It is an error if a field in this list has a non-empty value. 1566 // This may be used to include null fields in Patch requests. 1567 NullFields []string `json:"-"` 1568} 1569 1570func (s *Cluster) MarshalJSON() ([]byte, error) { 1571 type NoMethod Cluster 1572 raw := NoMethod(*s) 1573 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1574} 1575 1576// ClusterInfo: Information about a single cluster for clustering model. 1577type ClusterInfo struct { 1578 // CentroidId: Centroid id. 1579 CentroidId int64 `json:"centroidId,omitempty,string"` 1580 1581 // ClusterRadius: Cluster radius, the average distance from centroid to 1582 // each point assigned to the cluster. 1583 ClusterRadius float64 `json:"clusterRadius,omitempty"` 1584 1585 // ClusterSize: Cluster size, the total number of points assigned to the 1586 // cluster. 1587 ClusterSize int64 `json:"clusterSize,omitempty,string"` 1588 1589 // ForceSendFields is a list of field names (e.g. "CentroidId") to 1590 // unconditionally include in API requests. By default, fields with 1591 // empty values are omitted from API requests. However, any non-pointer, 1592 // non-interface field appearing in ForceSendFields will be sent to the 1593 // server regardless of whether the field is empty or not. This may be 1594 // used to include empty fields in Patch requests. 1595 ForceSendFields []string `json:"-"` 1596 1597 // NullFields is a list of field names (e.g. "CentroidId") to include in 1598 // API requests with the JSON null value. By default, fields with empty 1599 // values are omitted from API requests. However, any field with an 1600 // empty value appearing in NullFields will be sent to the server as 1601 // null. It is an error if a field in this list has a non-empty value. 1602 // This may be used to include null fields in Patch requests. 1603 NullFields []string `json:"-"` 1604} 1605 1606func (s *ClusterInfo) MarshalJSON() ([]byte, error) { 1607 type NoMethod ClusterInfo 1608 raw := NoMethod(*s) 1609 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1610} 1611 1612func (s *ClusterInfo) UnmarshalJSON(data []byte) error { 1613 type NoMethod ClusterInfo 1614 var s1 struct { 1615 ClusterRadius gensupport.JSONFloat64 `json:"clusterRadius"` 1616 *NoMethod 1617 } 1618 s1.NoMethod = (*NoMethod)(s) 1619 if err := json.Unmarshal(data, &s1); err != nil { 1620 return err 1621 } 1622 s.ClusterRadius = float64(s1.ClusterRadius) 1623 return nil 1624} 1625 1626type Clustering struct { 1627 // Fields: [Repeated] One or more fields on which data should be 1628 // clustered. Only top-level, non-repeated, simple-type fields are 1629 // supported. When you cluster a table using multiple columns, the order 1630 // of columns you specify is important. The order of the specified 1631 // columns determines the sort order of the data. 1632 Fields []string `json:"fields,omitempty"` 1633 1634 // ForceSendFields is a list of field names (e.g. "Fields") to 1635 // unconditionally include in API requests. By default, fields with 1636 // empty values are omitted from API requests. However, any non-pointer, 1637 // non-interface field appearing in ForceSendFields will be sent to the 1638 // server regardless of whether the field is empty or not. This may be 1639 // used to include empty fields in Patch requests. 1640 ForceSendFields []string `json:"-"` 1641 1642 // NullFields is a list of field names (e.g. "Fields") to include in API 1643 // requests with the JSON null value. By default, fields with empty 1644 // values are omitted from API requests. However, any field with an 1645 // empty value appearing in NullFields will be sent to the server as 1646 // null. It is an error if a field in this list has a non-empty value. 1647 // This may be used to include null fields in Patch requests. 1648 NullFields []string `json:"-"` 1649} 1650 1651func (s *Clustering) MarshalJSON() ([]byte, error) { 1652 type NoMethod Clustering 1653 raw := NoMethod(*s) 1654 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1655} 1656 1657// ClusteringMetrics: Evaluation metrics for clustering models. 1658type ClusteringMetrics struct { 1659 // Clusters: Information for all clusters. 1660 Clusters []*Cluster `json:"clusters,omitempty"` 1661 1662 // DaviesBouldinIndex: Davies-Bouldin index. 1663 DaviesBouldinIndex float64 `json:"daviesBouldinIndex,omitempty"` 1664 1665 // MeanSquaredDistance: Mean of squared distances between each sample to 1666 // its cluster centroid. 1667 MeanSquaredDistance float64 `json:"meanSquaredDistance,omitempty"` 1668 1669 // ForceSendFields is a list of field names (e.g. "Clusters") to 1670 // unconditionally include in API requests. By default, fields with 1671 // empty values are omitted from API requests. However, any non-pointer, 1672 // non-interface field appearing in ForceSendFields will be sent to the 1673 // server regardless of whether the field is empty or not. This may be 1674 // used to include empty fields in Patch requests. 1675 ForceSendFields []string `json:"-"` 1676 1677 // NullFields is a list of field names (e.g. "Clusters") to include in 1678 // API requests with the JSON null value. By default, fields with empty 1679 // values are omitted from API requests. However, any field with an 1680 // empty value appearing in NullFields will be sent to the server as 1681 // null. It is an error if a field in this list has a non-empty value. 1682 // This may be used to include null fields in Patch requests. 1683 NullFields []string `json:"-"` 1684} 1685 1686func (s *ClusteringMetrics) MarshalJSON() ([]byte, error) { 1687 type NoMethod ClusteringMetrics 1688 raw := NoMethod(*s) 1689 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1690} 1691 1692func (s *ClusteringMetrics) UnmarshalJSON(data []byte) error { 1693 type NoMethod ClusteringMetrics 1694 var s1 struct { 1695 DaviesBouldinIndex gensupport.JSONFloat64 `json:"daviesBouldinIndex"` 1696 MeanSquaredDistance gensupport.JSONFloat64 `json:"meanSquaredDistance"` 1697 *NoMethod 1698 } 1699 s1.NoMethod = (*NoMethod)(s) 1700 if err := json.Unmarshal(data, &s1); err != nil { 1701 return err 1702 } 1703 s.DaviesBouldinIndex = float64(s1.DaviesBouldinIndex) 1704 s.MeanSquaredDistance = float64(s1.MeanSquaredDistance) 1705 return nil 1706} 1707 1708// ConfusionMatrix: Confusion matrix for multi-class classification 1709// models. 1710type ConfusionMatrix struct { 1711 // ConfidenceThreshold: Confidence threshold used when computing the 1712 // entries of the confusion matrix. 1713 ConfidenceThreshold float64 `json:"confidenceThreshold,omitempty"` 1714 1715 // Rows: One row per actual label. 1716 Rows []*Row `json:"rows,omitempty"` 1717 1718 // ForceSendFields is a list of field names (e.g. "ConfidenceThreshold") 1719 // to unconditionally include in API requests. By default, fields with 1720 // empty values are omitted from API requests. However, any non-pointer, 1721 // non-interface field appearing in ForceSendFields will be sent to the 1722 // server regardless of whether the field is empty or not. This may be 1723 // used to include empty fields in Patch requests. 1724 ForceSendFields []string `json:"-"` 1725 1726 // NullFields is a list of field names (e.g. "ConfidenceThreshold") to 1727 // include in API requests with the JSON null value. By default, fields 1728 // with empty values are omitted from API requests. However, any field 1729 // with an empty value appearing in NullFields will be sent to the 1730 // server as null. It is an error if a field in this list has a 1731 // non-empty value. This may be used to include null fields in Patch 1732 // requests. 1733 NullFields []string `json:"-"` 1734} 1735 1736func (s *ConfusionMatrix) MarshalJSON() ([]byte, error) { 1737 type NoMethod ConfusionMatrix 1738 raw := NoMethod(*s) 1739 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1740} 1741 1742func (s *ConfusionMatrix) UnmarshalJSON(data []byte) error { 1743 type NoMethod ConfusionMatrix 1744 var s1 struct { 1745 ConfidenceThreshold gensupport.JSONFloat64 `json:"confidenceThreshold"` 1746 *NoMethod 1747 } 1748 s1.NoMethod = (*NoMethod)(s) 1749 if err := json.Unmarshal(data, &s1); err != nil { 1750 return err 1751 } 1752 s.ConfidenceThreshold = float64(s1.ConfidenceThreshold) 1753 return nil 1754} 1755 1756type ConnectionProperty struct { 1757 // Key: [Required] Name of the connection property to set. 1758 Key string `json:"key,omitempty"` 1759 1760 // Value: [Required] Value of the connection property. 1761 Value string `json:"value,omitempty"` 1762 1763 // ForceSendFields is a list of field names (e.g. "Key") to 1764 // unconditionally include in API requests. By default, fields with 1765 // empty values are omitted from API requests. However, any non-pointer, 1766 // non-interface field appearing in ForceSendFields will be sent to the 1767 // server regardless of whether the field is empty or not. This may be 1768 // used to include empty fields in Patch requests. 1769 ForceSendFields []string `json:"-"` 1770 1771 // NullFields is a list of field names (e.g. "Key") to include in API 1772 // requests with the JSON null value. By default, fields with empty 1773 // values are omitted from API requests. However, any field with an 1774 // empty value appearing in NullFields will be sent to the server as 1775 // null. It is an error if a field in this list has a non-empty value. 1776 // This may be used to include null fields in Patch requests. 1777 NullFields []string `json:"-"` 1778} 1779 1780func (s *ConnectionProperty) MarshalJSON() ([]byte, error) { 1781 type NoMethod ConnectionProperty 1782 raw := NoMethod(*s) 1783 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1784} 1785 1786type CsvOptions struct { 1787 // AllowJaggedRows: [Optional] Indicates if BigQuery should accept rows 1788 // that are missing trailing optional columns. If true, BigQuery treats 1789 // missing trailing columns as null values. If false, records with 1790 // missing trailing columns are treated as bad records, and if there are 1791 // too many bad records, an invalid error is returned in the job result. 1792 // The default value is false. 1793 AllowJaggedRows bool `json:"allowJaggedRows,omitempty"` 1794 1795 // AllowQuotedNewlines: [Optional] Indicates if BigQuery should allow 1796 // quoted data sections that contain newline characters in a CSV file. 1797 // The default value is false. 1798 AllowQuotedNewlines bool `json:"allowQuotedNewlines,omitempty"` 1799 1800 // Encoding: [Optional] The character encoding of the data. The 1801 // supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. 1802 // BigQuery decodes the data after the raw, binary data has been split 1803 // using the values of the quote and fieldDelimiter properties. 1804 Encoding string `json:"encoding,omitempty"` 1805 1806 // FieldDelimiter: [Optional] The separator for fields in a CSV file. 1807 // BigQuery converts the string to ISO-8859-1 encoding, and then uses 1808 // the first byte of the encoded string to split the data in its raw, 1809 // binary state. BigQuery also supports the escape sequence "\t" to 1810 // specify a tab separator. The default value is a comma (','). 1811 FieldDelimiter string `json:"fieldDelimiter,omitempty"` 1812 1813 // Quote: [Optional] The value that is used to quote data sections in a 1814 // CSV file. BigQuery converts the string to ISO-8859-1 encoding, and 1815 // then uses the first byte of the encoded string to split the data in 1816 // its raw, binary state. The default value is a double-quote ('"'). If 1817 // your data does not contain quoted sections, set the property value to 1818 // an empty string. If your data contains quoted newline characters, you 1819 // must also set the allowQuotedNewlines property to true. 1820 // 1821 // Default: " 1822 Quote *string `json:"quote,omitempty"` 1823 1824 // SkipLeadingRows: [Optional] The number of rows at the top of a CSV 1825 // file that BigQuery will skip when reading the data. The default value 1826 // is 0. This property is useful if you have header rows in the file 1827 // that should be skipped. When autodetect is on, the behavior is the 1828 // following: * skipLeadingRows unspecified - Autodetect tries to detect 1829 // headers in the first row. If they are not detected, the row is read 1830 // as data. Otherwise data is read starting from the second row. * 1831 // skipLeadingRows is 0 - Instructs autodetect that there are no headers 1832 // and data should be read starting from the first row. * 1833 // skipLeadingRows = N > 0 - Autodetect skips N-1 rows and tries to 1834 // detect headers in row N. If headers are not detected, row N is just 1835 // skipped. Otherwise row N is used to extract column names for the 1836 // detected schema. 1837 SkipLeadingRows int64 `json:"skipLeadingRows,omitempty,string"` 1838 1839 // ForceSendFields is a list of field names (e.g. "AllowJaggedRows") to 1840 // unconditionally include in API requests. By default, fields with 1841 // empty values are omitted from API requests. However, any non-pointer, 1842 // non-interface field appearing in ForceSendFields will be sent to the 1843 // server regardless of whether the field is empty or not. This may be 1844 // used to include empty fields in Patch requests. 1845 ForceSendFields []string `json:"-"` 1846 1847 // NullFields is a list of field names (e.g. "AllowJaggedRows") to 1848 // include in API requests with the JSON null value. By default, fields 1849 // with empty values are omitted from API requests. However, any field 1850 // with an empty value appearing in NullFields will be sent to the 1851 // server as null. It is an error if a field in this list has a 1852 // non-empty value. This may be used to include null fields in Patch 1853 // requests. 1854 NullFields []string `json:"-"` 1855} 1856 1857func (s *CsvOptions) MarshalJSON() ([]byte, error) { 1858 type NoMethod CsvOptions 1859 raw := NoMethod(*s) 1860 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1861} 1862 1863// DataSplitResult: Data split result. This contains references to the 1864// training and evaluation data tables that were used to train the 1865// model. 1866type DataSplitResult struct { 1867 // EvaluationTable: Table reference of the evaluation data after split. 1868 EvaluationTable *TableReference `json:"evaluationTable,omitempty"` 1869 1870 // TrainingTable: Table reference of the training data after split. 1871 TrainingTable *TableReference `json:"trainingTable,omitempty"` 1872 1873 // ForceSendFields is a list of field names (e.g. "EvaluationTable") to 1874 // unconditionally include in API requests. By default, fields with 1875 // empty values are omitted from API requests. However, any non-pointer, 1876 // non-interface field appearing in ForceSendFields will be sent to the 1877 // server regardless of whether the field is empty or not. This may be 1878 // used to include empty fields in Patch requests. 1879 ForceSendFields []string `json:"-"` 1880 1881 // NullFields is a list of field names (e.g. "EvaluationTable") to 1882 // include in API requests with the JSON null value. By default, fields 1883 // with empty values are omitted from API requests. However, any field 1884 // with an empty value appearing in NullFields will be sent to the 1885 // server as null. It is an error if a field in this list has a 1886 // non-empty value. This may be used to include null fields in Patch 1887 // requests. 1888 NullFields []string `json:"-"` 1889} 1890 1891func (s *DataSplitResult) MarshalJSON() ([]byte, error) { 1892 type NoMethod DataSplitResult 1893 raw := NoMethod(*s) 1894 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1895} 1896 1897type Dataset struct { 1898 // Access: [Optional] An array of objects that define dataset access for 1899 // one or more entities. You can set this property when inserting or 1900 // updating a dataset in order to control who is allowed to access the 1901 // data. If unspecified at dataset creation time, BigQuery adds default 1902 // dataset access for the following entities: access.specialGroup: 1903 // projectReaders; access.role: READER; access.specialGroup: 1904 // projectWriters; access.role: WRITER; access.specialGroup: 1905 // projectOwners; access.role: OWNER; access.userByEmail: [dataset 1906 // creator email]; access.role: OWNER; 1907 Access []*DatasetAccess `json:"access,omitempty"` 1908 1909 // CreationTime: [Output-only] The time when this dataset was created, 1910 // in milliseconds since the epoch. 1911 CreationTime int64 `json:"creationTime,omitempty,string"` 1912 1913 // DatasetReference: [Required] A reference that identifies the dataset. 1914 DatasetReference *DatasetReference `json:"datasetReference,omitempty"` 1915 1916 DefaultEncryptionConfiguration *EncryptionConfiguration `json:"defaultEncryptionConfiguration,omitempty"` 1917 1918 // DefaultPartitionExpirationMs: [Optional] The default partition 1919 // expiration for all partitioned tables in the dataset, in 1920 // milliseconds. Once this property is set, all newly-created 1921 // partitioned tables in the dataset will have an expirationMs property 1922 // in the timePartitioning settings set to this value, and changing the 1923 // value will only affect new tables, not existing ones. The storage in 1924 // a partition will have an expiration time of its partition time plus 1925 // this value. Setting this property overrides the use of 1926 // defaultTableExpirationMs for partitioned tables: only one of 1927 // defaultTableExpirationMs and defaultPartitionExpirationMs will be 1928 // used for any new partitioned table. If you provide an explicit 1929 // timePartitioning.expirationMs when creating or updating a partitioned 1930 // table, that value takes precedence over the default partition 1931 // expiration time indicated by this property. 1932 DefaultPartitionExpirationMs int64 `json:"defaultPartitionExpirationMs,omitempty,string"` 1933 1934 // DefaultTableExpirationMs: [Optional] The default lifetime of all 1935 // tables in the dataset, in milliseconds. The minimum value is 3600000 1936 // milliseconds (one hour). Once this property is set, all newly-created 1937 // tables in the dataset will have an expirationTime property set to the 1938 // creation time plus the value in this property, and changing the value 1939 // will only affect new tables, not existing ones. When the 1940 // expirationTime for a given table is reached, that table will be 1941 // deleted automatically. If a table's expirationTime is modified or 1942 // removed before the table expires, or if you provide an explicit 1943 // expirationTime when creating a table, that value takes precedence 1944 // over the default expiration time indicated by this property. 1945 DefaultTableExpirationMs int64 `json:"defaultTableExpirationMs,omitempty,string"` 1946 1947 // Description: [Optional] A user-friendly description of the dataset. 1948 Description string `json:"description,omitempty"` 1949 1950 // Etag: [Output-only] A hash of the resource. 1951 Etag string `json:"etag,omitempty"` 1952 1953 // FriendlyName: [Optional] A descriptive name for the dataset. 1954 FriendlyName string `json:"friendlyName,omitempty"` 1955 1956 // Id: [Output-only] The fully-qualified unique name of the dataset in 1957 // the format projectId:datasetId. The dataset name without the project 1958 // name is given in the datasetId field. When creating a new dataset, 1959 // leave this field blank, and instead specify the datasetId field. 1960 Id string `json:"id,omitempty"` 1961 1962 // Kind: [Output-only] The resource type. 1963 Kind string `json:"kind,omitempty"` 1964 1965 // Labels: The labels associated with this dataset. You can use these to 1966 // organize and group your datasets. You can set this property when 1967 // inserting or updating a dataset. See Creating and Updating Dataset 1968 // Labels for more information. 1969 Labels map[string]string `json:"labels,omitempty"` 1970 1971 // LastModifiedTime: [Output-only] The date when this dataset or any of 1972 // its tables was last modified, in milliseconds since the epoch. 1973 LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"` 1974 1975 // Location: The geographic location where the dataset should reside. 1976 // The default value is US. See details at 1977 // https://cloud.google.com/bigquery/docs/locations. 1978 Location string `json:"location,omitempty"` 1979 1980 // SatisfiesPZS: [Output-only] Reserved for future use. 1981 SatisfiesPZS bool `json:"satisfiesPZS,omitempty"` 1982 1983 // SelfLink: [Output-only] A URL that can be used to access the resource 1984 // again. You can use this URL in Get or Update requests to the 1985 // resource. 1986 SelfLink string `json:"selfLink,omitempty"` 1987 1988 // ServerResponse contains the HTTP response code and headers from the 1989 // server. 1990 googleapi.ServerResponse `json:"-"` 1991 1992 // ForceSendFields is a list of field names (e.g. "Access") to 1993 // unconditionally include in API requests. By default, fields with 1994 // empty values are omitted from API requests. However, any non-pointer, 1995 // non-interface field appearing in ForceSendFields will be sent to the 1996 // server regardless of whether the field is empty or not. This may be 1997 // used to include empty fields in Patch requests. 1998 ForceSendFields []string `json:"-"` 1999 2000 // NullFields is a list of field names (e.g. "Access") to include in API 2001 // requests with the JSON null value. By default, fields with empty 2002 // values are omitted from API requests. However, any field with an 2003 // empty value appearing in NullFields will be sent to the server as 2004 // null. It is an error if a field in this list has a non-empty value. 2005 // This may be used to include null fields in Patch requests. 2006 NullFields []string `json:"-"` 2007} 2008 2009func (s *Dataset) MarshalJSON() ([]byte, error) { 2010 type NoMethod Dataset 2011 raw := NoMethod(*s) 2012 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2013} 2014 2015type DatasetAccess struct { 2016 // Dataset: [Pick one] A grant authorizing all resources of a particular 2017 // type in a particular dataset access to this dataset. Only views are 2018 // supported for now. The role field is not required when this field is 2019 // set. If that dataset is deleted and re-created, its access needs to 2020 // be granted again via an update operation. 2021 Dataset *DatasetAccessEntry `json:"dataset,omitempty"` 2022 2023 // Domain: [Pick one] A domain to grant access to. Any users signed in 2024 // with the domain specified will be granted the specified access. 2025 // Example: "example.com". Maps to IAM policy member "domain:DOMAIN". 2026 Domain string `json:"domain,omitempty"` 2027 2028 // GroupByEmail: [Pick one] An email address of a Google Group to grant 2029 // access to. Maps to IAM policy member "group:GROUP". 2030 GroupByEmail string `json:"groupByEmail,omitempty"` 2031 2032 // IamMember: [Pick one] Some other type of member that appears in the 2033 // IAM Policy but isn't a user, group, domain, or special group. 2034 IamMember string `json:"iamMember,omitempty"` 2035 2036 // Role: [Required] An IAM role ID that should be granted to the user, 2037 // group, or domain specified in this access entry. The following legacy 2038 // mappings will be applied: OWNER roles/bigquery.dataOwner WRITER 2039 // roles/bigquery.dataEditor READER roles/bigquery.dataViewer This 2040 // field will accept any of the above formats, but will return only the 2041 // legacy format. For example, if you set this field to 2042 // "roles/bigquery.dataOwner", it will be returned back as "OWNER". 2043 Role string `json:"role,omitempty"` 2044 2045 // Routine: [Pick one] A routine from a different dataset to grant 2046 // access to. Queries executed against that routine will have read 2047 // access to views/tables/routines in this dataset. Only UDF is 2048 // supported for now. The role field is not required when this field is 2049 // set. If that routine is updated by any user, access to the routine 2050 // needs to be granted again via an update operation. 2051 Routine *RoutineReference `json:"routine,omitempty"` 2052 2053 // SpecialGroup: [Pick one] A special group to grant access to. Possible 2054 // values include: projectOwners: Owners of the enclosing project. 2055 // projectReaders: Readers of the enclosing project. projectWriters: 2056 // Writers of the enclosing project. allAuthenticatedUsers: All 2057 // authenticated BigQuery users. Maps to similarly-named IAM members. 2058 SpecialGroup string `json:"specialGroup,omitempty"` 2059 2060 // UserByEmail: [Pick one] An email address of a user to grant access 2061 // to. For example: fred@example.com. Maps to IAM policy member 2062 // "user:EMAIL" or "serviceAccount:EMAIL". 2063 UserByEmail string `json:"userByEmail,omitempty"` 2064 2065 // View: [Pick one] A view from a different dataset to grant access to. 2066 // Queries executed against that view will have read access to tables in 2067 // this dataset. The role field is not required when this field is set. 2068 // If that view is updated by any user, access to the view needs to be 2069 // granted again via an update operation. 2070 View *TableReference `json:"view,omitempty"` 2071 2072 // ForceSendFields is a list of field names (e.g. "Dataset") to 2073 // unconditionally include in API requests. By default, fields with 2074 // empty values are omitted from API requests. However, any non-pointer, 2075 // non-interface field appearing in ForceSendFields will be sent to the 2076 // server regardless of whether the field is empty or not. This may be 2077 // used to include empty fields in Patch requests. 2078 ForceSendFields []string `json:"-"` 2079 2080 // NullFields is a list of field names (e.g. "Dataset") to include in 2081 // API requests with the JSON null value. By default, fields with empty 2082 // values are omitted from API requests. However, any field with an 2083 // empty value appearing in NullFields will be sent to the server as 2084 // null. It is an error if a field in this list has a non-empty value. 2085 // This may be used to include null fields in Patch requests. 2086 NullFields []string `json:"-"` 2087} 2088 2089func (s *DatasetAccess) MarshalJSON() ([]byte, error) { 2090 type NoMethod DatasetAccess 2091 raw := NoMethod(*s) 2092 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2093} 2094 2095type DatasetAccessEntry struct { 2096 // Dataset: [Required] The dataset this entry applies to. 2097 Dataset *DatasetReference `json:"dataset,omitempty"` 2098 2099 TargetTypes []*DatasetAccessEntryTargetTypes `json:"target_types,omitempty"` 2100 2101 // ForceSendFields is a list of field names (e.g. "Dataset") to 2102 // unconditionally include in API requests. By default, fields with 2103 // empty values are omitted from API requests. However, any non-pointer, 2104 // non-interface field appearing in ForceSendFields will be sent to the 2105 // server regardless of whether the field is empty or not. This may be 2106 // used to include empty fields in Patch requests. 2107 ForceSendFields []string `json:"-"` 2108 2109 // NullFields is a list of field names (e.g. "Dataset") to include in 2110 // API requests with the JSON null value. By default, fields with empty 2111 // values are omitted from API requests. However, any field with an 2112 // empty value appearing in NullFields will be sent to the server as 2113 // null. It is an error if a field in this list has a non-empty value. 2114 // This may be used to include null fields in Patch requests. 2115 NullFields []string `json:"-"` 2116} 2117 2118func (s *DatasetAccessEntry) MarshalJSON() ([]byte, error) { 2119 type NoMethod DatasetAccessEntry 2120 raw := NoMethod(*s) 2121 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2122} 2123 2124type DatasetAccessEntryTargetTypes struct { 2125 // TargetType: [Required] Which resources in the dataset this entry 2126 // applies to. Currently, only views are supported, but additional 2127 // target types may be added in the future. Possible values: VIEWS: This 2128 // entry applies to all views in the dataset. 2129 TargetType string `json:"targetType,omitempty"` 2130 2131 // ForceSendFields is a list of field names (e.g. "TargetType") to 2132 // unconditionally include in API requests. By default, fields with 2133 // empty values are omitted from API requests. However, any non-pointer, 2134 // non-interface field appearing in ForceSendFields will be sent to the 2135 // server regardless of whether the field is empty or not. This may be 2136 // used to include empty fields in Patch requests. 2137 ForceSendFields []string `json:"-"` 2138 2139 // NullFields is a list of field names (e.g. "TargetType") to include in 2140 // API requests with the JSON null value. By default, fields with empty 2141 // values are omitted from API requests. However, any field with an 2142 // empty value appearing in NullFields will be sent to the server as 2143 // null. It is an error if a field in this list has a non-empty value. 2144 // This may be used to include null fields in Patch requests. 2145 NullFields []string `json:"-"` 2146} 2147 2148func (s *DatasetAccessEntryTargetTypes) MarshalJSON() ([]byte, error) { 2149 type NoMethod DatasetAccessEntryTargetTypes 2150 raw := NoMethod(*s) 2151 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2152} 2153 2154type DatasetList struct { 2155 // Datasets: An array of the dataset resources in the project. Each 2156 // resource contains basic information. For full information about a 2157 // particular dataset resource, use the Datasets: get method. This 2158 // property is omitted when there are no datasets in the project. 2159 Datasets []*DatasetListDatasets `json:"datasets,omitempty"` 2160 2161 // Etag: A hash value of the results page. You can use this property to 2162 // determine if the page has changed since the last request. 2163 Etag string `json:"etag,omitempty"` 2164 2165 // Kind: The list type. This property always returns the value 2166 // "bigquery#datasetList". 2167 Kind string `json:"kind,omitempty"` 2168 2169 // NextPageToken: A token that can be used to request the next results 2170 // page. This property is omitted on the final results page. 2171 NextPageToken string `json:"nextPageToken,omitempty"` 2172 2173 // ServerResponse contains the HTTP response code and headers from the 2174 // server. 2175 googleapi.ServerResponse `json:"-"` 2176 2177 // ForceSendFields is a list of field names (e.g. "Datasets") to 2178 // unconditionally include in API requests. By default, fields with 2179 // empty values are omitted from API requests. However, any non-pointer, 2180 // non-interface field appearing in ForceSendFields will be sent to the 2181 // server regardless of whether the field is empty or not. This may be 2182 // used to include empty fields in Patch requests. 2183 ForceSendFields []string `json:"-"` 2184 2185 // NullFields is a list of field names (e.g. "Datasets") to include in 2186 // API requests with the JSON null value. By default, fields with empty 2187 // values are omitted from API requests. However, any field with an 2188 // empty value appearing in NullFields will be sent to the server as 2189 // null. It is an error if a field in this list has a non-empty value. 2190 // This may be used to include null fields in Patch requests. 2191 NullFields []string `json:"-"` 2192} 2193 2194func (s *DatasetList) MarshalJSON() ([]byte, error) { 2195 type NoMethod DatasetList 2196 raw := NoMethod(*s) 2197 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2198} 2199 2200type DatasetListDatasets struct { 2201 // DatasetReference: The dataset reference. Use this property to access 2202 // specific parts of the dataset's ID, such as project ID or dataset ID. 2203 DatasetReference *DatasetReference `json:"datasetReference,omitempty"` 2204 2205 // FriendlyName: A descriptive name for the dataset, if one exists. 2206 FriendlyName string `json:"friendlyName,omitempty"` 2207 2208 // Id: The fully-qualified, unique, opaque ID of the dataset. 2209 Id string `json:"id,omitempty"` 2210 2211 // Kind: The resource type. This property always returns the value 2212 // "bigquery#dataset". 2213 Kind string `json:"kind,omitempty"` 2214 2215 // Labels: The labels associated with this dataset. You can use these to 2216 // organize and group your datasets. 2217 Labels map[string]string `json:"labels,omitempty"` 2218 2219 // Location: The geographic location where the data resides. 2220 Location string `json:"location,omitempty"` 2221 2222 // ForceSendFields is a list of field names (e.g. "DatasetReference") to 2223 // unconditionally include in API requests. By default, fields with 2224 // empty values are omitted from API requests. However, any non-pointer, 2225 // non-interface field appearing in ForceSendFields will be sent to the 2226 // server regardless of whether the field is empty or not. This may be 2227 // used to include empty fields in Patch requests. 2228 ForceSendFields []string `json:"-"` 2229 2230 // NullFields is a list of field names (e.g. "DatasetReference") to 2231 // include in API requests with the JSON null value. By default, fields 2232 // with empty values are omitted from API requests. However, any field 2233 // with an empty value appearing in NullFields will be sent to the 2234 // server as null. It is an error if a field in this list has a 2235 // non-empty value. This may be used to include null fields in Patch 2236 // requests. 2237 NullFields []string `json:"-"` 2238} 2239 2240func (s *DatasetListDatasets) MarshalJSON() ([]byte, error) { 2241 type NoMethod DatasetListDatasets 2242 raw := NoMethod(*s) 2243 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2244} 2245 2246type DatasetReference struct { 2247 // DatasetId: [Required] A unique ID for this dataset, without the 2248 // project name. The ID must contain only letters (a-z, A-Z), numbers 2249 // (0-9), or underscores (_). The maximum length is 1,024 characters. 2250 DatasetId string `json:"datasetId,omitempty"` 2251 2252 // ProjectId: [Optional] The ID of the project containing this dataset. 2253 ProjectId string `json:"projectId,omitempty"` 2254 2255 // ForceSendFields is a list of field names (e.g. "DatasetId") to 2256 // unconditionally include in API requests. By default, fields with 2257 // empty values are omitted from API requests. However, any non-pointer, 2258 // non-interface field appearing in ForceSendFields will be sent to the 2259 // server regardless of whether the field is empty or not. This may be 2260 // used to include empty fields in Patch requests. 2261 ForceSendFields []string `json:"-"` 2262 2263 // NullFields is a list of field names (e.g. "DatasetId") to include in 2264 // API requests with the JSON null value. By default, fields with empty 2265 // values are omitted from API requests. However, any field with an 2266 // empty value appearing in NullFields will be sent to the server as 2267 // null. It is an error if a field in this list has a non-empty value. 2268 // This may be used to include null fields in Patch requests. 2269 NullFields []string `json:"-"` 2270} 2271 2272func (s *DatasetReference) MarshalJSON() ([]byte, error) { 2273 type NoMethod DatasetReference 2274 raw := NoMethod(*s) 2275 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2276} 2277 2278type DestinationTableProperties struct { 2279 // Description: [Optional] The description for the destination table. 2280 // This will only be used if the destination table is newly created. If 2281 // the table already exists and a value different than the current 2282 // description is provided, the job will fail. 2283 Description string `json:"description,omitempty"` 2284 2285 // FriendlyName: [Optional] The friendly name for the destination table. 2286 // This will only be used if the destination table is newly created. If 2287 // the table already exists and a value different than the current 2288 // friendly name is provided, the job will fail. 2289 FriendlyName string `json:"friendlyName,omitempty"` 2290 2291 // Labels: [Optional] The labels associated with this table. You can use 2292 // these to organize and group your tables. This will only be used if 2293 // the destination table is newly created. If the table already exists 2294 // and labels are different than the current labels are provided, the 2295 // job will fail. 2296 Labels map[string]string `json:"labels,omitempty"` 2297 2298 // ForceSendFields is a list of field names (e.g. "Description") to 2299 // unconditionally include in API requests. By default, fields with 2300 // empty values are omitted from API requests. However, any non-pointer, 2301 // non-interface field appearing in ForceSendFields will be sent to the 2302 // server regardless of whether the field is empty or not. This may be 2303 // used to include empty fields in Patch requests. 2304 ForceSendFields []string `json:"-"` 2305 2306 // NullFields is a list of field names (e.g. "Description") to include 2307 // in API requests with the JSON null value. By default, fields with 2308 // empty values are omitted from API requests. However, any field with 2309 // an empty value appearing in NullFields will be sent to the server as 2310 // null. It is an error if a field in this list has a non-empty value. 2311 // This may be used to include null fields in Patch requests. 2312 NullFields []string `json:"-"` 2313} 2314 2315func (s *DestinationTableProperties) MarshalJSON() ([]byte, error) { 2316 type NoMethod DestinationTableProperties 2317 raw := NoMethod(*s) 2318 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2319} 2320 2321type EncryptionConfiguration struct { 2322 // KmsKeyName: [Optional] Describes the Cloud KMS encryption key that 2323 // will be used to protect destination BigQuery table. The BigQuery 2324 // Service Account associated with your project requires access to this 2325 // encryption key. 2326 KmsKeyName string `json:"kmsKeyName,omitempty"` 2327 2328 // ForceSendFields is a list of field names (e.g. "KmsKeyName") to 2329 // unconditionally include in API requests. By default, fields with 2330 // empty values are omitted from API requests. However, any non-pointer, 2331 // non-interface field appearing in ForceSendFields will be sent to the 2332 // server regardless of whether the field is empty or not. This may be 2333 // used to include empty fields in Patch requests. 2334 ForceSendFields []string `json:"-"` 2335 2336 // NullFields is a list of field names (e.g. "KmsKeyName") to include in 2337 // API requests with the JSON null value. By default, fields with empty 2338 // values are omitted from API requests. However, any field with an 2339 // empty value appearing in NullFields will be sent to the server as 2340 // null. It is an error if a field in this list has a non-empty value. 2341 // This may be used to include null fields in Patch requests. 2342 NullFields []string `json:"-"` 2343} 2344 2345func (s *EncryptionConfiguration) MarshalJSON() ([]byte, error) { 2346 type NoMethod EncryptionConfiguration 2347 raw := NoMethod(*s) 2348 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2349} 2350 2351// Entry: A single entry in the confusion matrix. 2352type Entry struct { 2353 // ItemCount: Number of items being predicted as this label. 2354 ItemCount int64 `json:"itemCount,omitempty,string"` 2355 2356 // PredictedLabel: The predicted label. For confidence_threshold > 0, we 2357 // will also add an entry indicating the number of items under the 2358 // confidence threshold. 2359 PredictedLabel string `json:"predictedLabel,omitempty"` 2360 2361 // ForceSendFields is a list of field names (e.g. "ItemCount") to 2362 // unconditionally include in API requests. By default, fields with 2363 // empty values are omitted from API requests. However, any non-pointer, 2364 // non-interface field appearing in ForceSendFields will be sent to the 2365 // server regardless of whether the field is empty or not. This may be 2366 // used to include empty fields in Patch requests. 2367 ForceSendFields []string `json:"-"` 2368 2369 // NullFields is a list of field names (e.g. "ItemCount") to include in 2370 // API requests with the JSON null value. By default, fields with empty 2371 // values are omitted from API requests. However, any field with an 2372 // empty value appearing in NullFields will be sent to the server as 2373 // null. It is an error if a field in this list has a non-empty value. 2374 // This may be used to include null fields in Patch requests. 2375 NullFields []string `json:"-"` 2376} 2377 2378func (s *Entry) MarshalJSON() ([]byte, error) { 2379 type NoMethod Entry 2380 raw := NoMethod(*s) 2381 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2382} 2383 2384type ErrorProto struct { 2385 // DebugInfo: Debugging information. This property is internal to Google 2386 // and should not be used. 2387 DebugInfo string `json:"debugInfo,omitempty"` 2388 2389 // Location: Specifies where the error occurred, if present. 2390 Location string `json:"location,omitempty"` 2391 2392 // Message: A human-readable description of the error. 2393 Message string `json:"message,omitempty"` 2394 2395 // Reason: A short error code that summarizes the error. 2396 Reason string `json:"reason,omitempty"` 2397 2398 // ForceSendFields is a list of field names (e.g. "DebugInfo") to 2399 // unconditionally include in API requests. By default, fields with 2400 // empty values are omitted from API requests. However, any non-pointer, 2401 // non-interface field appearing in ForceSendFields will be sent to the 2402 // server regardless of whether the field is empty or not. This may be 2403 // used to include empty fields in Patch requests. 2404 ForceSendFields []string `json:"-"` 2405 2406 // NullFields is a list of field names (e.g. "DebugInfo") to include in 2407 // API requests with the JSON null value. By default, fields with empty 2408 // values are omitted from API requests. However, any field with an 2409 // empty value appearing in NullFields will be sent to the server as 2410 // null. It is an error if a field in this list has a non-empty value. 2411 // This may be used to include null fields in Patch requests. 2412 NullFields []string `json:"-"` 2413} 2414 2415func (s *ErrorProto) MarshalJSON() ([]byte, error) { 2416 type NoMethod ErrorProto 2417 raw := NoMethod(*s) 2418 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2419} 2420 2421// EvaluationMetrics: Evaluation metrics of a model. These are either 2422// computed on all training data or just the eval data based on whether 2423// eval data was used during training. These are not present for 2424// imported models. 2425type EvaluationMetrics struct { 2426 // ArimaForecastingMetrics: Populated for ARIMA models. 2427 ArimaForecastingMetrics *ArimaForecastingMetrics `json:"arimaForecastingMetrics,omitempty"` 2428 2429 // BinaryClassificationMetrics: Populated for binary 2430 // classification/classifier models. 2431 BinaryClassificationMetrics *BinaryClassificationMetrics `json:"binaryClassificationMetrics,omitempty"` 2432 2433 // ClusteringMetrics: Populated for clustering models. 2434 ClusteringMetrics *ClusteringMetrics `json:"clusteringMetrics,omitempty"` 2435 2436 // MultiClassClassificationMetrics: Populated for multi-class 2437 // classification/classifier models. 2438 MultiClassClassificationMetrics *MultiClassClassificationMetrics `json:"multiClassClassificationMetrics,omitempty"` 2439 2440 // RankingMetrics: Populated for implicit feedback type matrix 2441 // factorization models. 2442 RankingMetrics *RankingMetrics `json:"rankingMetrics,omitempty"` 2443 2444 // RegressionMetrics: Populated for regression models and explicit 2445 // feedback type matrix factorization models. 2446 RegressionMetrics *RegressionMetrics `json:"regressionMetrics,omitempty"` 2447 2448 // ForceSendFields is a list of field names (e.g. 2449 // "ArimaForecastingMetrics") to unconditionally include in API 2450 // requests. By default, fields with empty values are omitted from API 2451 // requests. However, any non-pointer, non-interface field appearing in 2452 // ForceSendFields will be sent to the server regardless of whether the 2453 // field is empty or not. This may be used to include empty fields in 2454 // Patch requests. 2455 ForceSendFields []string `json:"-"` 2456 2457 // NullFields is a list of field names (e.g. "ArimaForecastingMetrics") 2458 // to include in API requests with the JSON null value. By default, 2459 // fields with empty values are omitted from API requests. However, any 2460 // field with an empty value appearing in NullFields will be sent to the 2461 // server as null. It is an error if a field in this list has a 2462 // non-empty value. This may be used to include null fields in Patch 2463 // requests. 2464 NullFields []string `json:"-"` 2465} 2466 2467func (s *EvaluationMetrics) MarshalJSON() ([]byte, error) { 2468 type NoMethod EvaluationMetrics 2469 raw := NoMethod(*s) 2470 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2471} 2472 2473type ExplainQueryStage struct { 2474 // CompletedParallelInputs: Number of parallel input segments completed. 2475 CompletedParallelInputs int64 `json:"completedParallelInputs,omitempty,string"` 2476 2477 // ComputeMsAvg: Milliseconds the average shard spent on CPU-bound 2478 // tasks. 2479 ComputeMsAvg int64 `json:"computeMsAvg,omitempty,string"` 2480 2481 // ComputeMsMax: Milliseconds the slowest shard spent on CPU-bound 2482 // tasks. 2483 ComputeMsMax int64 `json:"computeMsMax,omitempty,string"` 2484 2485 // ComputeRatioAvg: Relative amount of time the average shard spent on 2486 // CPU-bound tasks. 2487 ComputeRatioAvg float64 `json:"computeRatioAvg,omitempty"` 2488 2489 // ComputeRatioMax: Relative amount of time the slowest shard spent on 2490 // CPU-bound tasks. 2491 ComputeRatioMax float64 `json:"computeRatioMax,omitempty"` 2492 2493 // EndMs: Stage end time represented as milliseconds since epoch. 2494 EndMs int64 `json:"endMs,omitempty,string"` 2495 2496 // Id: Unique ID for stage within plan. 2497 Id int64 `json:"id,omitempty,string"` 2498 2499 // InputStages: IDs for stages that are inputs to this stage. 2500 InputStages googleapi.Int64s `json:"inputStages,omitempty"` 2501 2502 // Name: Human-readable name for stage. 2503 Name string `json:"name,omitempty"` 2504 2505 // ParallelInputs: Number of parallel input segments to be processed. 2506 ParallelInputs int64 `json:"parallelInputs,omitempty,string"` 2507 2508 // ReadMsAvg: Milliseconds the average shard spent reading input. 2509 ReadMsAvg int64 `json:"readMsAvg,omitempty,string"` 2510 2511 // ReadMsMax: Milliseconds the slowest shard spent reading input. 2512 ReadMsMax int64 `json:"readMsMax,omitempty,string"` 2513 2514 // ReadRatioAvg: Relative amount of time the average shard spent reading 2515 // input. 2516 ReadRatioAvg float64 `json:"readRatioAvg,omitempty"` 2517 2518 // ReadRatioMax: Relative amount of time the slowest shard spent reading 2519 // input. 2520 ReadRatioMax float64 `json:"readRatioMax,omitempty"` 2521 2522 // RecordsRead: Number of records read into the stage. 2523 RecordsRead int64 `json:"recordsRead,omitempty,string"` 2524 2525 // RecordsWritten: Number of records written by the stage. 2526 RecordsWritten int64 `json:"recordsWritten,omitempty,string"` 2527 2528 // ShuffleOutputBytes: Total number of bytes written to shuffle. 2529 ShuffleOutputBytes int64 `json:"shuffleOutputBytes,omitempty,string"` 2530 2531 // ShuffleOutputBytesSpilled: Total number of bytes written to shuffle 2532 // and spilled to disk. 2533 ShuffleOutputBytesSpilled int64 `json:"shuffleOutputBytesSpilled,omitempty,string"` 2534 2535 // SlotMs: Slot-milliseconds used by the stage. 2536 SlotMs int64 `json:"slotMs,omitempty,string"` 2537 2538 // StartMs: Stage start time represented as milliseconds since epoch. 2539 StartMs int64 `json:"startMs,omitempty,string"` 2540 2541 // Status: Current status for the stage. 2542 Status string `json:"status,omitempty"` 2543 2544 // Steps: List of operations within the stage in dependency order 2545 // (approximately chronological). 2546 Steps []*ExplainQueryStep `json:"steps,omitempty"` 2547 2548 // WaitMsAvg: Milliseconds the average shard spent waiting to be 2549 // scheduled. 2550 WaitMsAvg int64 `json:"waitMsAvg,omitempty,string"` 2551 2552 // WaitMsMax: Milliseconds the slowest shard spent waiting to be 2553 // scheduled. 2554 WaitMsMax int64 `json:"waitMsMax,omitempty,string"` 2555 2556 // WaitRatioAvg: Relative amount of time the average shard spent waiting 2557 // to be scheduled. 2558 WaitRatioAvg float64 `json:"waitRatioAvg,omitempty"` 2559 2560 // WaitRatioMax: Relative amount of time the slowest shard spent waiting 2561 // to be scheduled. 2562 WaitRatioMax float64 `json:"waitRatioMax,omitempty"` 2563 2564 // WriteMsAvg: Milliseconds the average shard spent on writing output. 2565 WriteMsAvg int64 `json:"writeMsAvg,omitempty,string"` 2566 2567 // WriteMsMax: Milliseconds the slowest shard spent on writing output. 2568 WriteMsMax int64 `json:"writeMsMax,omitempty,string"` 2569 2570 // WriteRatioAvg: Relative amount of time the average shard spent on 2571 // writing output. 2572 WriteRatioAvg float64 `json:"writeRatioAvg,omitempty"` 2573 2574 // WriteRatioMax: Relative amount of time the slowest shard spent on 2575 // writing output. 2576 WriteRatioMax float64 `json:"writeRatioMax,omitempty"` 2577 2578 // ForceSendFields is a list of field names (e.g. 2579 // "CompletedParallelInputs") to unconditionally include in API 2580 // requests. By default, fields with empty values are omitted from API 2581 // requests. However, any non-pointer, non-interface field appearing in 2582 // ForceSendFields will be sent to the server regardless of whether the 2583 // field is empty or not. This may be used to include empty fields in 2584 // Patch requests. 2585 ForceSendFields []string `json:"-"` 2586 2587 // NullFields is a list of field names (e.g. "CompletedParallelInputs") 2588 // to include in API requests with the JSON null value. By default, 2589 // fields with empty values are omitted from API requests. However, any 2590 // field with an empty value appearing in NullFields will be sent to the 2591 // server as null. It is an error if a field in this list has a 2592 // non-empty value. This may be used to include null fields in Patch 2593 // requests. 2594 NullFields []string `json:"-"` 2595} 2596 2597func (s *ExplainQueryStage) MarshalJSON() ([]byte, error) { 2598 type NoMethod ExplainQueryStage 2599 raw := NoMethod(*s) 2600 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2601} 2602 2603func (s *ExplainQueryStage) UnmarshalJSON(data []byte) error { 2604 type NoMethod ExplainQueryStage 2605 var s1 struct { 2606 ComputeRatioAvg gensupport.JSONFloat64 `json:"computeRatioAvg"` 2607 ComputeRatioMax gensupport.JSONFloat64 `json:"computeRatioMax"` 2608 ReadRatioAvg gensupport.JSONFloat64 `json:"readRatioAvg"` 2609 ReadRatioMax gensupport.JSONFloat64 `json:"readRatioMax"` 2610 WaitRatioAvg gensupport.JSONFloat64 `json:"waitRatioAvg"` 2611 WaitRatioMax gensupport.JSONFloat64 `json:"waitRatioMax"` 2612 WriteRatioAvg gensupport.JSONFloat64 `json:"writeRatioAvg"` 2613 WriteRatioMax gensupport.JSONFloat64 `json:"writeRatioMax"` 2614 *NoMethod 2615 } 2616 s1.NoMethod = (*NoMethod)(s) 2617 if err := json.Unmarshal(data, &s1); err != nil { 2618 return err 2619 } 2620 s.ComputeRatioAvg = float64(s1.ComputeRatioAvg) 2621 s.ComputeRatioMax = float64(s1.ComputeRatioMax) 2622 s.ReadRatioAvg = float64(s1.ReadRatioAvg) 2623 s.ReadRatioMax = float64(s1.ReadRatioMax) 2624 s.WaitRatioAvg = float64(s1.WaitRatioAvg) 2625 s.WaitRatioMax = float64(s1.WaitRatioMax) 2626 s.WriteRatioAvg = float64(s1.WriteRatioAvg) 2627 s.WriteRatioMax = float64(s1.WriteRatioMax) 2628 return nil 2629} 2630 2631type ExplainQueryStep struct { 2632 // Kind: Machine-readable operation type. 2633 Kind string `json:"kind,omitempty"` 2634 2635 // Substeps: Human-readable stage descriptions. 2636 Substeps []string `json:"substeps,omitempty"` 2637 2638 // ForceSendFields is a list of field names (e.g. "Kind") to 2639 // unconditionally include in API requests. By default, fields with 2640 // empty values are omitted from API requests. However, any non-pointer, 2641 // non-interface field appearing in ForceSendFields will be sent to the 2642 // server regardless of whether the field is empty or not. This may be 2643 // used to include empty fields in Patch requests. 2644 ForceSendFields []string `json:"-"` 2645 2646 // NullFields is a list of field names (e.g. "Kind") to include in API 2647 // requests with the JSON null value. By default, fields with empty 2648 // values are omitted from API requests. However, any field with an 2649 // empty value appearing in NullFields will be sent to the server as 2650 // null. It is an error if a field in this list has a non-empty value. 2651 // This may be used to include null fields in Patch requests. 2652 NullFields []string `json:"-"` 2653} 2654 2655func (s *ExplainQueryStep) MarshalJSON() ([]byte, error) { 2656 type NoMethod ExplainQueryStep 2657 raw := NoMethod(*s) 2658 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2659} 2660 2661// Explanation: Explanation for a single feature. 2662type Explanation struct { 2663 // Attribution: Attribution of feature. 2664 Attribution float64 `json:"attribution,omitempty"` 2665 2666 // FeatureName: Full name of the feature. For non-numerical features, 2667 // will be formatted like .. Overall size of feature name will always be 2668 // truncated to first 120 characters. 2669 FeatureName string `json:"featureName,omitempty"` 2670 2671 // ForceSendFields is a list of field names (e.g. "Attribution") to 2672 // unconditionally include in API requests. By default, fields with 2673 // empty values are omitted from API requests. However, any non-pointer, 2674 // non-interface field appearing in ForceSendFields will be sent to the 2675 // server regardless of whether the field is empty or not. This may be 2676 // used to include empty fields in Patch requests. 2677 ForceSendFields []string `json:"-"` 2678 2679 // NullFields is a list of field names (e.g. "Attribution") to include 2680 // in API requests with the JSON null value. By default, fields with 2681 // empty values are omitted from API requests. However, any field with 2682 // an empty value appearing in NullFields will be sent to the server as 2683 // null. It is an error if a field in this list has a non-empty value. 2684 // This may be used to include null fields in Patch requests. 2685 NullFields []string `json:"-"` 2686} 2687 2688func (s *Explanation) MarshalJSON() ([]byte, error) { 2689 type NoMethod Explanation 2690 raw := NoMethod(*s) 2691 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2692} 2693 2694func (s *Explanation) UnmarshalJSON(data []byte) error { 2695 type NoMethod Explanation 2696 var s1 struct { 2697 Attribution gensupport.JSONFloat64 `json:"attribution"` 2698 *NoMethod 2699 } 2700 s1.NoMethod = (*NoMethod)(s) 2701 if err := json.Unmarshal(data, &s1); err != nil { 2702 return err 2703 } 2704 s.Attribution = float64(s1.Attribution) 2705 return nil 2706} 2707 2708// Expr: Represents a textual expression in the Common Expression 2709// Language (CEL) syntax. CEL is a C-like expression language. The 2710// syntax and semantics of CEL are documented at 2711// https://github.com/google/cel-spec. Example (Comparison): title: 2712// "Summary size limit" description: "Determines if a summary is less 2713// than 100 chars" expression: "document.summary.size() < 100" Example 2714// (Equality): title: "Requestor is owner" description: "Determines if 2715// requestor is the document owner" expression: "document.owner == 2716// request.auth.claims.email" Example (Logic): title: "Public documents" 2717// description: "Determine whether the document should be publicly 2718// visible" expression: "document.type != 'private' && document.type != 2719// 'internal'" Example (Data Manipulation): title: "Notification string" 2720// description: "Create a notification string with a timestamp." 2721// expression: "'New message received at ' + 2722// string(document.create_time)" The exact variables and functions that 2723// may be referenced within an expression are determined by the service 2724// that evaluates it. See the service documentation for additional 2725// information. 2726type Expr struct { 2727 // Description: Optional. Description of the expression. This is a 2728 // longer text which describes the expression, e.g. when hovered over it 2729 // in a UI. 2730 Description string `json:"description,omitempty"` 2731 2732 // Expression: Textual representation of an expression in Common 2733 // Expression Language syntax. 2734 Expression string `json:"expression,omitempty"` 2735 2736 // Location: Optional. String indicating the location of the expression 2737 // for error reporting, e.g. a file name and a position in the file. 2738 Location string `json:"location,omitempty"` 2739 2740 // Title: Optional. Title for the expression, i.e. a short string 2741 // describing its purpose. This can be used e.g. in UIs which allow to 2742 // enter the expression. 2743 Title string `json:"title,omitempty"` 2744 2745 // ForceSendFields is a list of field names (e.g. "Description") to 2746 // unconditionally include in API requests. By default, fields with 2747 // empty values are omitted from API requests. However, any non-pointer, 2748 // non-interface field appearing in ForceSendFields will be sent to the 2749 // server regardless of whether the field is empty or not. This may be 2750 // used to include empty fields in Patch requests. 2751 ForceSendFields []string `json:"-"` 2752 2753 // NullFields is a list of field names (e.g. "Description") to include 2754 // in API requests with the JSON null value. By default, fields with 2755 // empty values are omitted from API requests. However, any field with 2756 // an empty value appearing in NullFields will be sent to the server as 2757 // null. It is an error if a field in this list has a non-empty value. 2758 // This may be used to include null fields in Patch requests. 2759 NullFields []string `json:"-"` 2760} 2761 2762func (s *Expr) MarshalJSON() ([]byte, error) { 2763 type NoMethod Expr 2764 raw := NoMethod(*s) 2765 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2766} 2767 2768type ExternalDataConfiguration struct { 2769 // Autodetect: Try to detect schema and format options automatically. 2770 // Any option specified explicitly will be honored. 2771 Autodetect bool `json:"autodetect,omitempty"` 2772 2773 // BigtableOptions: [Optional] Additional options if sourceFormat is set 2774 // to BIGTABLE. 2775 BigtableOptions *BigtableOptions `json:"bigtableOptions,omitempty"` 2776 2777 // Compression: [Optional] The compression type of the data source. 2778 // Possible values include GZIP and NONE. The default value is NONE. 2779 // This setting is ignored for Google Cloud Bigtable, Google Cloud 2780 // Datastore backups and Avro formats. 2781 Compression string `json:"compression,omitempty"` 2782 2783 // ConnectionId: [Optional, Trusted Tester] Connection for external data 2784 // source. 2785 ConnectionId string `json:"connectionId,omitempty"` 2786 2787 // CsvOptions: Additional properties to set if sourceFormat is set to 2788 // CSV. 2789 CsvOptions *CsvOptions `json:"csvOptions,omitempty"` 2790 2791 // GoogleSheetsOptions: [Optional] Additional options if sourceFormat is 2792 // set to GOOGLE_SHEETS. 2793 GoogleSheetsOptions *GoogleSheetsOptions `json:"googleSheetsOptions,omitempty"` 2794 2795 // HivePartitioningOptions: [Optional] Options to configure hive 2796 // partitioning support. 2797 HivePartitioningOptions *HivePartitioningOptions `json:"hivePartitioningOptions,omitempty"` 2798 2799 // IgnoreUnknownValues: [Optional] Indicates if BigQuery should allow 2800 // extra values that are not represented in the table schema. If true, 2801 // the extra values are ignored. If false, records with extra columns 2802 // are treated as bad records, and if there are too many bad records, an 2803 // invalid error is returned in the job result. The default value is 2804 // false. The sourceFormat property determines what BigQuery treats as 2805 // an extra value: CSV: Trailing columns JSON: Named values that don't 2806 // match any column names Google Cloud Bigtable: This setting is 2807 // ignored. Google Cloud Datastore backups: This setting is ignored. 2808 // Avro: This setting is ignored. 2809 IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"` 2810 2811 // MaxBadRecords: [Optional] The maximum number of bad records that 2812 // BigQuery can ignore when reading data. If the number of bad records 2813 // exceeds this value, an invalid error is returned in the job result. 2814 // This is only valid for CSV, JSON, and Google Sheets. The default 2815 // value is 0, which requires that all records are valid. This setting 2816 // is ignored for Google Cloud Bigtable, Google Cloud Datastore backups 2817 // and Avro formats. 2818 MaxBadRecords int64 `json:"maxBadRecords,omitempty"` 2819 2820 // ParquetOptions: Additional properties to set if sourceFormat is set 2821 // to Parquet. 2822 ParquetOptions *ParquetOptions `json:"parquetOptions,omitempty"` 2823 2824 // Schema: [Optional] The schema for the data. Schema is required for 2825 // CSV and JSON formats. Schema is disallowed for Google Cloud Bigtable, 2826 // Cloud Datastore backups, and Avro formats. 2827 Schema *TableSchema `json:"schema,omitempty"` 2828 2829 // SourceFormat: [Required] The data format. For CSV files, specify 2830 // "CSV". For Google sheets, specify "GOOGLE_SHEETS". For 2831 // newline-delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Avro 2832 // files, specify "AVRO". For Google Cloud Datastore backups, specify 2833 // "DATASTORE_BACKUP". [Beta] For Google Cloud Bigtable, specify 2834 // "BIGTABLE". 2835 SourceFormat string `json:"sourceFormat,omitempty"` 2836 2837 // SourceUris: [Required] The fully-qualified URIs that point to your 2838 // data in Google Cloud. For Google Cloud Storage URIs: Each URI can 2839 // contain one '*' wildcard character and it must come after the 2840 // 'bucket' name. Size limits related to load jobs apply to external 2841 // data sources. For Google Cloud Bigtable URIs: Exactly one URI can be 2842 // specified and it has be a fully specified and valid HTTPS URL for a 2843 // Google Cloud Bigtable table. For Google Cloud Datastore backups, 2844 // exactly one URI can be specified. Also, the '*' wildcard character is 2845 // not allowed. 2846 SourceUris []string `json:"sourceUris,omitempty"` 2847 2848 // ForceSendFields is a list of field names (e.g. "Autodetect") to 2849 // unconditionally include in API requests. By default, fields with 2850 // empty values are omitted from API requests. However, any non-pointer, 2851 // non-interface field appearing in ForceSendFields will be sent to the 2852 // server regardless of whether the field is empty or not. This may be 2853 // used to include empty fields in Patch requests. 2854 ForceSendFields []string `json:"-"` 2855 2856 // NullFields is a list of field names (e.g. "Autodetect") to include in 2857 // API requests with the JSON null value. By default, fields with empty 2858 // values are omitted from API requests. However, any field with an 2859 // empty value appearing in NullFields will be sent to the server as 2860 // null. It is an error if a field in this list has a non-empty value. 2861 // This may be used to include null fields in Patch requests. 2862 NullFields []string `json:"-"` 2863} 2864 2865func (s *ExternalDataConfiguration) MarshalJSON() ([]byte, error) { 2866 type NoMethod ExternalDataConfiguration 2867 raw := NoMethod(*s) 2868 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2869} 2870 2871// FeatureValue: Representative value of a single feature within the 2872// cluster. 2873type FeatureValue struct { 2874 // CategoricalValue: The categorical feature value. 2875 CategoricalValue *CategoricalValue `json:"categoricalValue,omitempty"` 2876 2877 // FeatureColumn: The feature column name. 2878 FeatureColumn string `json:"featureColumn,omitempty"` 2879 2880 // NumericalValue: The numerical feature value. This is the centroid 2881 // value for this feature. 2882 NumericalValue float64 `json:"numericalValue,omitempty"` 2883 2884 // ForceSendFields is a list of field names (e.g. "CategoricalValue") to 2885 // unconditionally include in API requests. By default, fields with 2886 // empty values are omitted from API requests. However, any non-pointer, 2887 // non-interface field appearing in ForceSendFields will be sent to the 2888 // server regardless of whether the field is empty or not. This may be 2889 // used to include empty fields in Patch requests. 2890 ForceSendFields []string `json:"-"` 2891 2892 // NullFields is a list of field names (e.g. "CategoricalValue") to 2893 // include in API requests with the JSON null value. By default, fields 2894 // with empty values are omitted from API requests. However, any field 2895 // with an empty value appearing in NullFields will be sent to the 2896 // server as null. It is an error if a field in this list has a 2897 // non-empty value. This may be used to include null fields in Patch 2898 // requests. 2899 NullFields []string `json:"-"` 2900} 2901 2902func (s *FeatureValue) MarshalJSON() ([]byte, error) { 2903 type NoMethod FeatureValue 2904 raw := NoMethod(*s) 2905 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2906} 2907 2908func (s *FeatureValue) UnmarshalJSON(data []byte) error { 2909 type NoMethod FeatureValue 2910 var s1 struct { 2911 NumericalValue gensupport.JSONFloat64 `json:"numericalValue"` 2912 *NoMethod 2913 } 2914 s1.NoMethod = (*NoMethod)(s) 2915 if err := json.Unmarshal(data, &s1); err != nil { 2916 return err 2917 } 2918 s.NumericalValue = float64(s1.NumericalValue) 2919 return nil 2920} 2921 2922// GetIamPolicyRequest: Request message for `GetIamPolicy` method. 2923type GetIamPolicyRequest struct { 2924 // Options: OPTIONAL: A `GetPolicyOptions` object for specifying options 2925 // to `GetIamPolicy`. 2926 Options *GetPolicyOptions `json:"options,omitempty"` 2927 2928 // ForceSendFields is a list of field names (e.g. "Options") to 2929 // unconditionally include in API requests. By default, fields with 2930 // empty values are omitted from API requests. However, any non-pointer, 2931 // non-interface field appearing in ForceSendFields will be sent to the 2932 // server regardless of whether the field is empty or not. This may be 2933 // used to include empty fields in Patch requests. 2934 ForceSendFields []string `json:"-"` 2935 2936 // NullFields is a list of field names (e.g. "Options") to include in 2937 // API requests with the JSON null value. By default, fields with empty 2938 // values are omitted from API requests. However, any field with an 2939 // empty value appearing in NullFields will be sent to the server as 2940 // null. It is an error if a field in this list has a non-empty value. 2941 // This may be used to include null fields in Patch requests. 2942 NullFields []string `json:"-"` 2943} 2944 2945func (s *GetIamPolicyRequest) MarshalJSON() ([]byte, error) { 2946 type NoMethod GetIamPolicyRequest 2947 raw := NoMethod(*s) 2948 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2949} 2950 2951// GetPolicyOptions: Encapsulates settings provided to GetIamPolicy. 2952type GetPolicyOptions struct { 2953 // RequestedPolicyVersion: Optional. The policy format version to be 2954 // returned. Valid values are 0, 1, and 3. Requests specifying an 2955 // invalid value will be rejected. Requests for policies with any 2956 // conditional bindings must specify version 3. Policies without any 2957 // conditional bindings may specify any valid value or leave the field 2958 // unset. To learn which resources support conditions in their IAM 2959 // policies, see the IAM documentation 2960 // (https://cloud.google.com/iam/help/conditions/resource-policies). 2961 RequestedPolicyVersion int64 `json:"requestedPolicyVersion,omitempty"` 2962 2963 // ForceSendFields is a list of field names (e.g. 2964 // "RequestedPolicyVersion") to unconditionally include in API requests. 2965 // By default, fields with empty values are omitted from API requests. 2966 // However, any non-pointer, non-interface field appearing in 2967 // ForceSendFields will be sent to the server regardless of whether the 2968 // field is empty or not. This may be used to include empty fields in 2969 // Patch requests. 2970 ForceSendFields []string `json:"-"` 2971 2972 // NullFields is a list of field names (e.g. "RequestedPolicyVersion") 2973 // to include in API requests with the JSON null value. By default, 2974 // fields with empty values are omitted from API requests. However, any 2975 // field with an empty value appearing in NullFields will be sent to the 2976 // server as null. It is an error if a field in this list has a 2977 // non-empty value. This may be used to include null fields in Patch 2978 // requests. 2979 NullFields []string `json:"-"` 2980} 2981 2982func (s *GetPolicyOptions) MarshalJSON() ([]byte, error) { 2983 type NoMethod GetPolicyOptions 2984 raw := NoMethod(*s) 2985 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2986} 2987 2988type GetQueryResultsResponse struct { 2989 // CacheHit: Whether the query result was fetched from the query cache. 2990 CacheHit bool `json:"cacheHit,omitempty"` 2991 2992 // Errors: [Output-only] The first errors or warnings encountered during 2993 // the running of the job. The final message includes the number of 2994 // errors that caused the process to stop. Errors here do not 2995 // necessarily mean that the job has completed or was unsuccessful. 2996 Errors []*ErrorProto `json:"errors,omitempty"` 2997 2998 // Etag: A hash of this response. 2999 Etag string `json:"etag,omitempty"` 3000 3001 // JobComplete: Whether the query has completed or not. If rows or 3002 // totalRows are present, this will always be true. If this is false, 3003 // totalRows will not be available. 3004 JobComplete bool `json:"jobComplete,omitempty"` 3005 3006 // JobReference: Reference to the BigQuery Job that was created to run 3007 // the query. This field will be present even if the original request 3008 // timed out, in which case GetQueryResults can be used to read the 3009 // results once the query has completed. Since this API only returns the 3010 // first page of results, subsequent pages can be fetched via the same 3011 // mechanism (GetQueryResults). 3012 JobReference *JobReference `json:"jobReference,omitempty"` 3013 3014 // Kind: The resource type of the response. 3015 Kind string `json:"kind,omitempty"` 3016 3017 // NumDmlAffectedRows: [Output-only] The number of rows affected by a 3018 // DML statement. Present only for DML statements INSERT, UPDATE or 3019 // DELETE. 3020 NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"` 3021 3022 // PageToken: A token used for paging results. 3023 PageToken string `json:"pageToken,omitempty"` 3024 3025 // Rows: An object with as many results as can be contained within the 3026 // maximum permitted reply size. To get any additional rows, you can 3027 // call GetQueryResults and specify the jobReference returned above. 3028 // Present only when the query completes successfully. 3029 Rows []*TableRow `json:"rows,omitempty"` 3030 3031 // Schema: The schema of the results. Present only when the query 3032 // completes successfully. 3033 Schema *TableSchema `json:"schema,omitempty"` 3034 3035 // TotalBytesProcessed: The total number of bytes processed for this 3036 // query. 3037 TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` 3038 3039 // TotalRows: The total number of rows in the complete query result set, 3040 // which can be more than the number of rows in this single page of 3041 // results. Present only when the query completes successfully. 3042 TotalRows uint64 `json:"totalRows,omitempty,string"` 3043 3044 // ServerResponse contains the HTTP response code and headers from the 3045 // server. 3046 googleapi.ServerResponse `json:"-"` 3047 3048 // ForceSendFields is a list of field names (e.g. "CacheHit") to 3049 // unconditionally include in API requests. By default, fields with 3050 // empty values are omitted from API requests. However, any non-pointer, 3051 // non-interface field appearing in ForceSendFields will be sent to the 3052 // server regardless of whether the field is empty or not. This may be 3053 // used to include empty fields in Patch requests. 3054 ForceSendFields []string `json:"-"` 3055 3056 // NullFields is a list of field names (e.g. "CacheHit") to include in 3057 // API requests with the JSON null value. By default, fields with empty 3058 // values are omitted from API requests. However, any field with an 3059 // empty value appearing in NullFields will be sent to the server as 3060 // null. It is an error if a field in this list has a non-empty value. 3061 // This may be used to include null fields in Patch requests. 3062 NullFields []string `json:"-"` 3063} 3064 3065func (s *GetQueryResultsResponse) MarshalJSON() ([]byte, error) { 3066 type NoMethod GetQueryResultsResponse 3067 raw := NoMethod(*s) 3068 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3069} 3070 3071type GetServiceAccountResponse struct { 3072 // Email: The service account email address. 3073 Email string `json:"email,omitempty"` 3074 3075 // Kind: The resource type of the response. 3076 Kind string `json:"kind,omitempty"` 3077 3078 // ServerResponse contains the HTTP response code and headers from the 3079 // server. 3080 googleapi.ServerResponse `json:"-"` 3081 3082 // ForceSendFields is a list of field names (e.g. "Email") to 3083 // unconditionally include in API requests. By default, fields with 3084 // empty values are omitted from API requests. However, any non-pointer, 3085 // non-interface field appearing in ForceSendFields will be sent to the 3086 // server regardless of whether the field is empty or not. This may be 3087 // used to include empty fields in Patch requests. 3088 ForceSendFields []string `json:"-"` 3089 3090 // NullFields is a list of field names (e.g. "Email") to include in API 3091 // requests with the JSON null value. By default, fields with empty 3092 // values are omitted from API requests. However, any field with an 3093 // empty value appearing in NullFields will be sent to the server as 3094 // null. It is an error if a field in this list has a non-empty value. 3095 // This may be used to include null fields in Patch requests. 3096 NullFields []string `json:"-"` 3097} 3098 3099func (s *GetServiceAccountResponse) MarshalJSON() ([]byte, error) { 3100 type NoMethod GetServiceAccountResponse 3101 raw := NoMethod(*s) 3102 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3103} 3104 3105// GlobalExplanation: Global explanations containing the top most 3106// important features after training. 3107type GlobalExplanation struct { 3108 // ClassLabel: Class label for this set of global explanations. Will be 3109 // empty/null for binary logistic and linear regression models. Sorted 3110 // alphabetically in descending order. 3111 ClassLabel string `json:"classLabel,omitempty"` 3112 3113 // Explanations: A list of the top global explanations. Sorted by 3114 // absolute value of attribution in descending order. 3115 Explanations []*Explanation `json:"explanations,omitempty"` 3116 3117 // ForceSendFields is a list of field names (e.g. "ClassLabel") to 3118 // unconditionally include in API requests. By default, fields with 3119 // empty values are omitted from API requests. However, any non-pointer, 3120 // non-interface field appearing in ForceSendFields will be sent to the 3121 // server regardless of whether the field is empty or not. This may be 3122 // used to include empty fields in Patch requests. 3123 ForceSendFields []string `json:"-"` 3124 3125 // NullFields is a list of field names (e.g. "ClassLabel") to include in 3126 // API requests with the JSON null value. By default, fields with empty 3127 // values are omitted from API requests. However, any field with an 3128 // empty value appearing in NullFields will be sent to the server as 3129 // null. It is an error if a field in this list has a non-empty value. 3130 // This may be used to include null fields in Patch requests. 3131 NullFields []string `json:"-"` 3132} 3133 3134func (s *GlobalExplanation) MarshalJSON() ([]byte, error) { 3135 type NoMethod GlobalExplanation 3136 raw := NoMethod(*s) 3137 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3138} 3139 3140type GoogleSheetsOptions struct { 3141 // Range: [Optional] Range of a sheet to query from. Only used when 3142 // non-empty. Typical format: 3143 // sheet_name!top_left_cell_id:bottom_right_cell_id For example: 3144 // sheet1!A1:B20 3145 Range string `json:"range,omitempty"` 3146 3147 // SkipLeadingRows: [Optional] The number of rows at the top of a sheet 3148 // that BigQuery will skip when reading the data. The default value is 3149 // 0. This property is useful if you have header rows that should be 3150 // skipped. When autodetect is on, behavior is the following: * 3151 // skipLeadingRows unspecified - Autodetect tries to detect headers in 3152 // the first row. If they are not detected, the row is read as data. 3153 // Otherwise data is read starting from the second row. * 3154 // skipLeadingRows is 0 - Instructs autodetect that there are no headers 3155 // and data should be read starting from the first row. * 3156 // skipLeadingRows = N > 0 - Autodetect skips N-1 rows and tries to 3157 // detect headers in row N. If headers are not detected, row N is just 3158 // skipped. Otherwise row N is used to extract column names for the 3159 // detected schema. 3160 SkipLeadingRows int64 `json:"skipLeadingRows,omitempty,string"` 3161 3162 // ForceSendFields is a list of field names (e.g. "Range") to 3163 // unconditionally include in API requests. By default, fields with 3164 // empty values are omitted from API requests. However, any non-pointer, 3165 // non-interface field appearing in ForceSendFields will be sent to the 3166 // server regardless of whether the field is empty or not. This may be 3167 // used to include empty fields in Patch requests. 3168 ForceSendFields []string `json:"-"` 3169 3170 // NullFields is a list of field names (e.g. "Range") to include in API 3171 // requests with the JSON null value. By default, fields with empty 3172 // values are omitted from API requests. However, any field with an 3173 // empty value appearing in NullFields will be sent to the server as 3174 // null. It is an error if a field in this list has a non-empty value. 3175 // This may be used to include null fields in Patch requests. 3176 NullFields []string `json:"-"` 3177} 3178 3179func (s *GoogleSheetsOptions) MarshalJSON() ([]byte, error) { 3180 type NoMethod GoogleSheetsOptions 3181 raw := NoMethod(*s) 3182 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3183} 3184 3185type HivePartitioningOptions struct { 3186 // Mode: [Optional] When set, what mode of hive partitioning to use when 3187 // reading data. The following modes are supported. (1) AUTO: 3188 // automatically infer partition key name(s) and type(s). (2) STRINGS: 3189 // automatically infer partition key name(s). All types are interpreted 3190 // as strings. (3) CUSTOM: partition key schema is encoded in the source 3191 // URI prefix. Not all storage formats support hive partitioning. 3192 // Requesting hive partitioning on an unsupported format will lead to an 3193 // error. Currently supported types include: AVRO, CSV, JSON, ORC and 3194 // Parquet. 3195 Mode string `json:"mode,omitempty"` 3196 3197 // RequirePartitionFilter: [Optional] If set to true, queries over this 3198 // table require a partition filter that can be used for partition 3199 // elimination to be specified. Note that this field should only be true 3200 // when creating a permanent external table or querying a temporary 3201 // external table. Hive-partitioned loads with requirePartitionFilter 3202 // explicitly set to true will fail. 3203 RequirePartitionFilter bool `json:"requirePartitionFilter,omitempty"` 3204 3205 // SourceUriPrefix: [Optional] When hive partition detection is 3206 // requested, a common prefix for all source uris should be supplied. 3207 // The prefix must end immediately before the partition key encoding 3208 // begins. For example, consider files following this data layout. 3209 // gs://bucket/path_to_table/dt=2019-01-01/country=BR/id=7/file.avro 3210 // gs://bucket/path_to_table/dt=2018-12-31/country=CA/id=3/file.avro 3211 // When hive partitioning is requested with either AUTO or STRINGS 3212 // detection, the common prefix can be either of 3213 // gs://bucket/path_to_table or gs://bucket/path_to_table/ (trailing 3214 // slash does not matter). 3215 SourceUriPrefix string `json:"sourceUriPrefix,omitempty"` 3216 3217 // ForceSendFields is a list of field names (e.g. "Mode") to 3218 // unconditionally include in API requests. By default, fields with 3219 // empty values are omitted from API requests. However, any non-pointer, 3220 // non-interface field appearing in ForceSendFields will be sent to the 3221 // server regardless of whether the field is empty or not. This may be 3222 // used to include empty fields in Patch requests. 3223 ForceSendFields []string `json:"-"` 3224 3225 // NullFields is a list of field names (e.g. "Mode") to include in API 3226 // requests with the JSON null value. By default, fields with empty 3227 // values are omitted from API requests. However, any field with an 3228 // empty value appearing in NullFields will be sent to the server as 3229 // null. It is an error if a field in this list has a non-empty value. 3230 // This may be used to include null fields in Patch requests. 3231 NullFields []string `json:"-"` 3232} 3233 3234func (s *HivePartitioningOptions) MarshalJSON() ([]byte, error) { 3235 type NoMethod HivePartitioningOptions 3236 raw := NoMethod(*s) 3237 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3238} 3239 3240// IterationResult: Information about a single iteration of the training 3241// run. 3242type IterationResult struct { 3243 ArimaResult *ArimaResult `json:"arimaResult,omitempty"` 3244 3245 // ClusterInfos: Information about top clusters for clustering models. 3246 ClusterInfos []*ClusterInfo `json:"clusterInfos,omitempty"` 3247 3248 // DurationMs: Time taken to run the iteration in milliseconds. 3249 DurationMs int64 `json:"durationMs,omitempty,string"` 3250 3251 // EvalLoss: Loss computed on the eval data at the end of iteration. 3252 EvalLoss float64 `json:"evalLoss,omitempty"` 3253 3254 // Index: Index of the iteration, 0 based. 3255 Index int64 `json:"index,omitempty"` 3256 3257 // LearnRate: Learn rate used for this iteration. 3258 LearnRate float64 `json:"learnRate,omitempty"` 3259 3260 // TrainingLoss: Loss computed on the training data at the end of 3261 // iteration. 3262 TrainingLoss float64 `json:"trainingLoss,omitempty"` 3263 3264 // ForceSendFields is a list of field names (e.g. "ArimaResult") to 3265 // unconditionally include in API requests. By default, fields with 3266 // empty values are omitted from API requests. However, any non-pointer, 3267 // non-interface field appearing in ForceSendFields will be sent to the 3268 // server regardless of whether the field is empty or not. This may be 3269 // used to include empty fields in Patch requests. 3270 ForceSendFields []string `json:"-"` 3271 3272 // NullFields is a list of field names (e.g. "ArimaResult") to include 3273 // in API requests with the JSON null value. By default, fields with 3274 // empty values are omitted from API requests. However, any field with 3275 // an empty value appearing in NullFields will be sent to the server as 3276 // null. It is an error if a field in this list has a non-empty value. 3277 // This may be used to include null fields in Patch requests. 3278 NullFields []string `json:"-"` 3279} 3280 3281func (s *IterationResult) MarshalJSON() ([]byte, error) { 3282 type NoMethod IterationResult 3283 raw := NoMethod(*s) 3284 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3285} 3286 3287func (s *IterationResult) UnmarshalJSON(data []byte) error { 3288 type NoMethod IterationResult 3289 var s1 struct { 3290 EvalLoss gensupport.JSONFloat64 `json:"evalLoss"` 3291 LearnRate gensupport.JSONFloat64 `json:"learnRate"` 3292 TrainingLoss gensupport.JSONFloat64 `json:"trainingLoss"` 3293 *NoMethod 3294 } 3295 s1.NoMethod = (*NoMethod)(s) 3296 if err := json.Unmarshal(data, &s1); err != nil { 3297 return err 3298 } 3299 s.EvalLoss = float64(s1.EvalLoss) 3300 s.LearnRate = float64(s1.LearnRate) 3301 s.TrainingLoss = float64(s1.TrainingLoss) 3302 return nil 3303} 3304 3305type Job struct { 3306 // Configuration: [Required] Describes the job configuration. 3307 Configuration *JobConfiguration `json:"configuration,omitempty"` 3308 3309 // Etag: [Output-only] A hash of this resource. 3310 Etag string `json:"etag,omitempty"` 3311 3312 // Id: [Output-only] Opaque ID field of the job 3313 Id string `json:"id,omitempty"` 3314 3315 // JobReference: [Optional] Reference describing the unique-per-user 3316 // name of the job. 3317 JobReference *JobReference `json:"jobReference,omitempty"` 3318 3319 // Kind: [Output-only] The type of the resource. 3320 Kind string `json:"kind,omitempty"` 3321 3322 // SelfLink: [Output-only] A URL that can be used to access this 3323 // resource again. 3324 SelfLink string `json:"selfLink,omitempty"` 3325 3326 // Statistics: [Output-only] Information about the job, including 3327 // starting time and ending time of the job. 3328 Statistics *JobStatistics `json:"statistics,omitempty"` 3329 3330 // Status: [Output-only] The status of this job. Examine this value when 3331 // polling an asynchronous job to see if the job is complete. 3332 Status *JobStatus `json:"status,omitempty"` 3333 3334 // UserEmail: [Output-only] Email address of the user who ran the job. 3335 UserEmail string `json:"user_email,omitempty"` 3336 3337 // ServerResponse contains the HTTP response code and headers from the 3338 // server. 3339 googleapi.ServerResponse `json:"-"` 3340 3341 // ForceSendFields is a list of field names (e.g. "Configuration") to 3342 // unconditionally include in API requests. By default, fields with 3343 // empty values are omitted from API requests. However, any non-pointer, 3344 // non-interface field appearing in ForceSendFields will be sent to the 3345 // server regardless of whether the field is empty or not. This may be 3346 // used to include empty fields in Patch requests. 3347 ForceSendFields []string `json:"-"` 3348 3349 // NullFields is a list of field names (e.g. "Configuration") to include 3350 // in API requests with the JSON null value. By default, fields with 3351 // empty values are omitted from API requests. However, any field with 3352 // an empty value appearing in NullFields will be sent to the server as 3353 // null. It is an error if a field in this list has a non-empty value. 3354 // This may be used to include null fields in Patch requests. 3355 NullFields []string `json:"-"` 3356} 3357 3358func (s *Job) MarshalJSON() ([]byte, error) { 3359 type NoMethod Job 3360 raw := NoMethod(*s) 3361 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3362} 3363 3364type JobCancelResponse struct { 3365 // Job: The final state of the job. 3366 Job *Job `json:"job,omitempty"` 3367 3368 // Kind: The resource type of the response. 3369 Kind string `json:"kind,omitempty"` 3370 3371 // ServerResponse contains the HTTP response code and headers from the 3372 // server. 3373 googleapi.ServerResponse `json:"-"` 3374 3375 // ForceSendFields is a list of field names (e.g. "Job") to 3376 // unconditionally include in API requests. By default, fields with 3377 // empty values are omitted from API requests. However, any non-pointer, 3378 // non-interface field appearing in ForceSendFields will be sent to the 3379 // server regardless of whether the field is empty or not. This may be 3380 // used to include empty fields in Patch requests. 3381 ForceSendFields []string `json:"-"` 3382 3383 // NullFields is a list of field names (e.g. "Job") to include in API 3384 // requests with the JSON null value. By default, fields with empty 3385 // values are omitted from API requests. However, any field with an 3386 // empty value appearing in NullFields will be sent to the server as 3387 // null. It is an error if a field in this list has a non-empty value. 3388 // This may be used to include null fields in Patch requests. 3389 NullFields []string `json:"-"` 3390} 3391 3392func (s *JobCancelResponse) MarshalJSON() ([]byte, error) { 3393 type NoMethod JobCancelResponse 3394 raw := NoMethod(*s) 3395 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3396} 3397 3398type JobConfiguration struct { 3399 // Copy: [Pick one] Copies a table. 3400 Copy *JobConfigurationTableCopy `json:"copy,omitempty"` 3401 3402 // DryRun: [Optional] If set, don't actually run this job. A valid query 3403 // will return a mostly empty response with some processing statistics, 3404 // while an invalid query will return the same error it would if it 3405 // wasn't a dry run. Behavior of non-query jobs is undefined. 3406 DryRun bool `json:"dryRun,omitempty"` 3407 3408 // Extract: [Pick one] Configures an extract job. 3409 Extract *JobConfigurationExtract `json:"extract,omitempty"` 3410 3411 // JobTimeoutMs: [Optional] Job timeout in milliseconds. If this time 3412 // limit is exceeded, BigQuery may attempt to terminate the job. 3413 JobTimeoutMs int64 `json:"jobTimeoutMs,omitempty,string"` 3414 3415 // JobType: [Output-only] The type of the job. Can be QUERY, LOAD, 3416 // EXTRACT, COPY or UNKNOWN. 3417 JobType string `json:"jobType,omitempty"` 3418 3419 // Labels: The labels associated with this job. You can use these to 3420 // organize and group your jobs. Label keys and values can be no longer 3421 // than 63 characters, can only contain lowercase letters, numeric 3422 // characters, underscores and dashes. International characters are 3423 // allowed. Label values are optional. Label keys must start with a 3424 // letter and each label in the list must have a different key. 3425 Labels map[string]string `json:"labels,omitempty"` 3426 3427 // Load: [Pick one] Configures a load job. 3428 Load *JobConfigurationLoad `json:"load,omitempty"` 3429 3430 // Query: [Pick one] Configures a query job. 3431 Query *JobConfigurationQuery `json:"query,omitempty"` 3432 3433 // ForceSendFields is a list of field names (e.g. "Copy") to 3434 // unconditionally include in API requests. By default, fields with 3435 // empty values are omitted from API requests. However, any non-pointer, 3436 // non-interface field appearing in ForceSendFields will be sent to the 3437 // server regardless of whether the field is empty or not. This may be 3438 // used to include empty fields in Patch requests. 3439 ForceSendFields []string `json:"-"` 3440 3441 // NullFields is a list of field names (e.g. "Copy") to include in API 3442 // requests with the JSON null value. By default, fields with empty 3443 // values are omitted from API requests. However, any field with an 3444 // empty value appearing in NullFields will be sent to the server as 3445 // null. It is an error if a field in this list has a non-empty value. 3446 // This may be used to include null fields in Patch requests. 3447 NullFields []string `json:"-"` 3448} 3449 3450func (s *JobConfiguration) MarshalJSON() ([]byte, error) { 3451 type NoMethod JobConfiguration 3452 raw := NoMethod(*s) 3453 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3454} 3455 3456type JobConfigurationExtract struct { 3457 // Compression: [Optional] The compression type to use for exported 3458 // files. Possible values include GZIP, DEFLATE, SNAPPY, and NONE. The 3459 // default value is NONE. DEFLATE and SNAPPY are only supported for 3460 // Avro. Not applicable when extracting models. 3461 Compression string `json:"compression,omitempty"` 3462 3463 // DestinationFormat: [Optional] The exported file format. Possible 3464 // values include CSV, NEWLINE_DELIMITED_JSON, PARQUET or AVRO for 3465 // tables and ML_TF_SAVED_MODEL or ML_XGBOOST_BOOSTER for models. The 3466 // default value for tables is CSV. Tables with nested or repeated 3467 // fields cannot be exported as CSV. The default value for models is 3468 // ML_TF_SAVED_MODEL. 3469 DestinationFormat string `json:"destinationFormat,omitempty"` 3470 3471 // DestinationUri: [Pick one] DEPRECATED: Use destinationUris instead, 3472 // passing only one URI as necessary. The fully-qualified Google Cloud 3473 // Storage URI where the extracted table should be written. 3474 DestinationUri string `json:"destinationUri,omitempty"` 3475 3476 // DestinationUris: [Pick one] A list of fully-qualified Google Cloud 3477 // Storage URIs where the extracted table should be written. 3478 DestinationUris []string `json:"destinationUris,omitempty"` 3479 3480 // FieldDelimiter: [Optional] Delimiter to use between fields in the 3481 // exported data. Default is ','. Not applicable when extracting models. 3482 FieldDelimiter string `json:"fieldDelimiter,omitempty"` 3483 3484 // PrintHeader: [Optional] Whether to print out a header row in the 3485 // results. Default is true. Not applicable when extracting models. 3486 // 3487 // Default: true 3488 PrintHeader *bool `json:"printHeader,omitempty"` 3489 3490 // SourceModel: A reference to the model being exported. 3491 SourceModel *ModelReference `json:"sourceModel,omitempty"` 3492 3493 // SourceTable: A reference to the table being exported. 3494 SourceTable *TableReference `json:"sourceTable,omitempty"` 3495 3496 // UseAvroLogicalTypes: [Optional] If destinationFormat is set to 3497 // "AVRO", this flag indicates whether to enable extracting applicable 3498 // column types (such as TIMESTAMP) to their corresponding AVRO logical 3499 // types (timestamp-micros), instead of only using their raw types 3500 // (avro-long). Not applicable when extracting models. 3501 UseAvroLogicalTypes bool `json:"useAvroLogicalTypes,omitempty"` 3502 3503 // ForceSendFields is a list of field names (e.g. "Compression") to 3504 // unconditionally include in API requests. By default, fields with 3505 // empty values are omitted from API requests. However, any non-pointer, 3506 // non-interface field appearing in ForceSendFields will be sent to the 3507 // server regardless of whether the field is empty or not. This may be 3508 // used to include empty fields in Patch requests. 3509 ForceSendFields []string `json:"-"` 3510 3511 // NullFields is a list of field names (e.g. "Compression") to include 3512 // in API requests with the JSON null value. By default, fields with 3513 // empty values are omitted from API requests. However, any field with 3514 // an empty value appearing in NullFields will be sent to the server as 3515 // null. It is an error if a field in this list has a non-empty value. 3516 // This may be used to include null fields in Patch requests. 3517 NullFields []string `json:"-"` 3518} 3519 3520func (s *JobConfigurationExtract) MarshalJSON() ([]byte, error) { 3521 type NoMethod JobConfigurationExtract 3522 raw := NoMethod(*s) 3523 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3524} 3525 3526type JobConfigurationLoad struct { 3527 // AllowJaggedRows: [Optional] Accept rows that are missing trailing 3528 // optional columns. The missing values are treated as nulls. If false, 3529 // records with missing trailing columns are treated as bad records, and 3530 // if there are too many bad records, an invalid error is returned in 3531 // the job result. The default value is false. Only applicable to CSV, 3532 // ignored for other formats. 3533 AllowJaggedRows bool `json:"allowJaggedRows,omitempty"` 3534 3535 // AllowQuotedNewlines: Indicates if BigQuery should allow quoted data 3536 // sections that contain newline characters in a CSV file. The default 3537 // value is false. 3538 AllowQuotedNewlines bool `json:"allowQuotedNewlines,omitempty"` 3539 3540 // Autodetect: [Optional] Indicates if we should automatically infer the 3541 // options and schema for CSV and JSON sources. 3542 Autodetect bool `json:"autodetect,omitempty"` 3543 3544 // Clustering: [Beta] Clustering specification for the destination 3545 // table. Must be specified with time-based partitioning, data in the 3546 // table will be first partitioned and subsequently clustered. 3547 Clustering *Clustering `json:"clustering,omitempty"` 3548 3549 // CreateDisposition: [Optional] Specifies whether the job is allowed to 3550 // create new tables. The following values are supported: 3551 // CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the 3552 // table. CREATE_NEVER: The table must already exist. If it does not, a 3553 // 'notFound' error is returned in the job result. The default value is 3554 // CREATE_IF_NEEDED. Creation, truncation and append actions occur as 3555 // one atomic update upon job completion. 3556 CreateDisposition string `json:"createDisposition,omitempty"` 3557 3558 // DecimalTargetTypes: Defines the list of possible SQL data types to 3559 // which the source decimal values are converted. This list and the 3560 // precision and the scale parameters of the decimal field determine the 3561 // target type. In the order of NUMERIC, BIGNUMERIC (Preview 3562 // (/products/#product-launch-stages)), and STRING, a type is picked if 3563 // it is in the specified list and if it supports the precision and the 3564 // scale. STRING supports all precision and scale values. If none of the 3565 // listed types supports the precision and the scale, the type 3566 // supporting the widest range in the specified list is picked, and if a 3567 // value exceeds the supported range when reading the data, an error 3568 // will be thrown. Example: Suppose the value of this field is 3569 // ["NUMERIC", "BIGNUMERIC"]. If (precision,scale) is: * (38,9) -> 3570 // NUMERIC; * (39,9) -> BIGNUMERIC (NUMERIC cannot hold 30 integer 3571 // digits); * (38,10) -> BIGNUMERIC (NUMERIC cannot hold 10 fractional 3572 // digits); * (76,38) -> BIGNUMERIC; * (77,38) -> BIGNUMERIC (error if 3573 // value exeeds supported range). This field cannot contain duplicate 3574 // types. The order of the types in this field is ignored. For example, 3575 // ["BIGNUMERIC", "NUMERIC"] is the same as ["NUMERIC", "BIGNUMERIC"] 3576 // and NUMERIC always takes precedence over BIGNUMERIC. Defaults to 3577 // ["NUMERIC", "STRING"] for ORC and ["NUMERIC"] for the other file 3578 // formats. 3579 DecimalTargetTypes []string `json:"decimalTargetTypes,omitempty"` 3580 3581 // DestinationEncryptionConfiguration: Custom encryption configuration 3582 // (e.g., Cloud KMS keys). 3583 DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` 3584 3585 // DestinationTable: [Required] The destination table to load the data 3586 // into. 3587 DestinationTable *TableReference `json:"destinationTable,omitempty"` 3588 3589 // DestinationTableProperties: [Beta] [Optional] Properties with which 3590 // to create the destination table if it is new. 3591 DestinationTableProperties *DestinationTableProperties `json:"destinationTableProperties,omitempty"` 3592 3593 // Encoding: [Optional] The character encoding of the data. The 3594 // supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. 3595 // BigQuery decodes the data after the raw, binary data has been split 3596 // using the values of the quote and fieldDelimiter properties. 3597 Encoding string `json:"encoding,omitempty"` 3598 3599 // FieldDelimiter: [Optional] The separator for fields in a CSV file. 3600 // The separator can be any ISO-8859-1 single-byte character. To use a 3601 // character in the range 128-255, you must encode the character as 3602 // UTF8. BigQuery converts the string to ISO-8859-1 encoding, and then 3603 // uses the first byte of the encoded string to split the data in its 3604 // raw, binary state. BigQuery also supports the escape sequence "\t" to 3605 // specify a tab separator. The default value is a comma (','). 3606 FieldDelimiter string `json:"fieldDelimiter,omitempty"` 3607 3608 // HivePartitioningOptions: [Optional] Options to configure hive 3609 // partitioning support. 3610 HivePartitioningOptions *HivePartitioningOptions `json:"hivePartitioningOptions,omitempty"` 3611 3612 // IgnoreUnknownValues: [Optional] Indicates if BigQuery should allow 3613 // extra values that are not represented in the table schema. If true, 3614 // the extra values are ignored. If false, records with extra columns 3615 // are treated as bad records, and if there are too many bad records, an 3616 // invalid error is returned in the job result. The default value is 3617 // false. The sourceFormat property determines what BigQuery treats as 3618 // an extra value: CSV: Trailing columns JSON: Named values that don't 3619 // match any column names 3620 IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"` 3621 3622 // JsonExtension: [Optional] If sourceFormat is set to newline-delimited 3623 // JSON, indicates whether it should be processed as a JSON variant such 3624 // as GeoJSON. For a sourceFormat other than JSON, omit this field. If 3625 // the sourceFormat is newline-delimited JSON: - for newline-delimited 3626 // GeoJSON: set to GEOJSON. 3627 JsonExtension string `json:"jsonExtension,omitempty"` 3628 3629 // MaxBadRecords: [Optional] The maximum number of bad records that 3630 // BigQuery can ignore when running the job. If the number of bad 3631 // records exceeds this value, an invalid error is returned in the job 3632 // result. This is only valid for CSV and JSON. The default value is 0, 3633 // which requires that all records are valid. 3634 MaxBadRecords int64 `json:"maxBadRecords,omitempty"` 3635 3636 // NullMarker: [Optional] Specifies a string that represents a null 3637 // value in a CSV file. For example, if you specify "\N", BigQuery 3638 // interprets "\N" as a null value when loading a CSV file. The default 3639 // value is the empty string. If you set this property to a custom 3640 // value, BigQuery throws an error if an empty string is present for all 3641 // data types except for STRING and BYTE. For STRING and BYTE columns, 3642 // BigQuery interprets the empty string as an empty value. 3643 NullMarker string `json:"nullMarker,omitempty"` 3644 3645 // ParquetOptions: [Optional] Options to configure parquet support. 3646 ParquetOptions *ParquetOptions `json:"parquetOptions,omitempty"` 3647 3648 // ProjectionFields: If sourceFormat is set to "DATASTORE_BACKUP", 3649 // indicates which entity properties to load into BigQuery from a Cloud 3650 // Datastore backup. Property names are case sensitive and must be 3651 // top-level properties. If no properties are specified, BigQuery loads 3652 // all properties. If any named property isn't found in the Cloud 3653 // Datastore backup, an invalid error is returned in the job result. 3654 ProjectionFields []string `json:"projectionFields,omitempty"` 3655 3656 // Quote: [Optional] The value that is used to quote data sections in a 3657 // CSV file. BigQuery converts the string to ISO-8859-1 encoding, and 3658 // then uses the first byte of the encoded string to split the data in 3659 // its raw, binary state. The default value is a double-quote ('"'). If 3660 // your data does not contain quoted sections, set the property value to 3661 // an empty string. If your data contains quoted newline characters, you 3662 // must also set the allowQuotedNewlines property to true. 3663 // 3664 // Default: " 3665 Quote *string `json:"quote,omitempty"` 3666 3667 // RangePartitioning: [TrustedTester] Range partitioning specification 3668 // for this table. Only one of timePartitioning and rangePartitioning 3669 // should be specified. 3670 RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"` 3671 3672 // Schema: [Optional] The schema for the destination table. The schema 3673 // can be omitted if the destination table already exists, or if you're 3674 // loading data from Google Cloud Datastore. 3675 Schema *TableSchema `json:"schema,omitempty"` 3676 3677 // SchemaInline: [Deprecated] The inline schema. For CSV schemas, 3678 // specify as "Field1:Type1[,Field2:Type2]*". For example, "foo:STRING, 3679 // bar:INTEGER, baz:FLOAT". 3680 SchemaInline string `json:"schemaInline,omitempty"` 3681 3682 // SchemaInlineFormat: [Deprecated] The format of the schemaInline 3683 // property. 3684 SchemaInlineFormat string `json:"schemaInlineFormat,omitempty"` 3685 3686 // SchemaUpdateOptions: Allows the schema of the destination table to be 3687 // updated as a side effect of the load job if a schema is autodetected 3688 // or supplied in the job configuration. Schema update options are 3689 // supported in two cases: when writeDisposition is WRITE_APPEND; when 3690 // writeDisposition is WRITE_TRUNCATE and the destination table is a 3691 // partition of a table, specified by partition decorators. For normal 3692 // tables, WRITE_TRUNCATE will always overwrite the schema. One or more 3693 // of the following values are specified: ALLOW_FIELD_ADDITION: allow 3694 // adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow 3695 // relaxing a required field in the original schema to nullable. 3696 SchemaUpdateOptions []string `json:"schemaUpdateOptions,omitempty"` 3697 3698 // SkipLeadingRows: [Optional] The number of rows at the top of a CSV 3699 // file that BigQuery will skip when loading the data. The default value 3700 // is 0. This property is useful if you have header rows in the file 3701 // that should be skipped. 3702 SkipLeadingRows int64 `json:"skipLeadingRows,omitempty"` 3703 3704 // SourceFormat: [Optional] The format of the data files. For CSV files, 3705 // specify "CSV". For datastore backups, specify "DATASTORE_BACKUP". For 3706 // newline-delimited JSON, specify "NEWLINE_DELIMITED_JSON". For Avro, 3707 // specify "AVRO". For parquet, specify "PARQUET". For orc, specify 3708 // "ORC". The default value is CSV. 3709 SourceFormat string `json:"sourceFormat,omitempty"` 3710 3711 // SourceUris: [Required] The fully-qualified URIs that point to your 3712 // data in Google Cloud. For Google Cloud Storage URIs: Each URI can 3713 // contain one '*' wildcard character and it must come after the 3714 // 'bucket' name. Size limits related to load jobs apply to external 3715 // data sources. For Google Cloud Bigtable URIs: Exactly one URI can be 3716 // specified and it has be a fully specified and valid HTTPS URL for a 3717 // Google Cloud Bigtable table. For Google Cloud Datastore backups: 3718 // Exactly one URI can be specified. Also, the '*' wildcard character is 3719 // not allowed. 3720 SourceUris []string `json:"sourceUris,omitempty"` 3721 3722 // TimePartitioning: Time-based partitioning specification for the 3723 // destination table. Only one of timePartitioning and rangePartitioning 3724 // should be specified. 3725 TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"` 3726 3727 // UseAvroLogicalTypes: [Optional] If sourceFormat is set to "AVRO", 3728 // indicates whether to enable interpreting logical types into their 3729 // corresponding types (ie. TIMESTAMP), instead of only using their raw 3730 // types (ie. INTEGER). 3731 UseAvroLogicalTypes bool `json:"useAvroLogicalTypes,omitempty"` 3732 3733 // WriteDisposition: [Optional] Specifies the action that occurs if the 3734 // destination table already exists. The following values are supported: 3735 // WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the 3736 // table data. WRITE_APPEND: If the table already exists, BigQuery 3737 // appends the data to the table. WRITE_EMPTY: If the table already 3738 // exists and contains data, a 'duplicate' error is returned in the job 3739 // result. The default value is WRITE_APPEND. Each action is atomic and 3740 // only occurs if BigQuery is able to complete the job successfully. 3741 // Creation, truncation and append actions occur as one atomic update 3742 // upon job completion. 3743 WriteDisposition string `json:"writeDisposition,omitempty"` 3744 3745 // ForceSendFields is a list of field names (e.g. "AllowJaggedRows") to 3746 // unconditionally include in API requests. By default, fields with 3747 // empty values are omitted from API requests. However, any non-pointer, 3748 // non-interface field appearing in ForceSendFields will be sent to the 3749 // server regardless of whether the field is empty or not. This may be 3750 // used to include empty fields in Patch requests. 3751 ForceSendFields []string `json:"-"` 3752 3753 // NullFields is a list of field names (e.g. "AllowJaggedRows") to 3754 // include in API requests with the JSON null value. By default, fields 3755 // with empty values are omitted from API requests. However, any field 3756 // with an empty value appearing in NullFields will be sent to the 3757 // server as null. It is an error if a field in this list has a 3758 // non-empty value. This may be used to include null fields in Patch 3759 // requests. 3760 NullFields []string `json:"-"` 3761} 3762 3763func (s *JobConfigurationLoad) MarshalJSON() ([]byte, error) { 3764 type NoMethod JobConfigurationLoad 3765 raw := NoMethod(*s) 3766 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3767} 3768 3769type JobConfigurationQuery struct { 3770 // AllowLargeResults: [Optional] If true and query uses legacy SQL 3771 // dialect, allows the query to produce arbitrarily large result tables 3772 // at a slight cost in performance. Requires destinationTable to be set. 3773 // For standard SQL queries, this flag is ignored and large results are 3774 // always allowed. However, you must still set destinationTable when 3775 // result size exceeds the allowed maximum response size. 3776 AllowLargeResults bool `json:"allowLargeResults,omitempty"` 3777 3778 // Clustering: [Beta] Clustering specification for the destination 3779 // table. Must be specified with time-based partitioning, data in the 3780 // table will be first partitioned and subsequently clustered. 3781 Clustering *Clustering `json:"clustering,omitempty"` 3782 3783 // ConnectionProperties: Connection properties. 3784 ConnectionProperties []*ConnectionProperty `json:"connectionProperties,omitempty"` 3785 3786 // CreateDisposition: [Optional] Specifies whether the job is allowed to 3787 // create new tables. The following values are supported: 3788 // CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the 3789 // table. CREATE_NEVER: The table must already exist. If it does not, a 3790 // 'notFound' error is returned in the job result. The default value is 3791 // CREATE_IF_NEEDED. Creation, truncation and append actions occur as 3792 // one atomic update upon job completion. 3793 CreateDisposition string `json:"createDisposition,omitempty"` 3794 3795 // CreateSession: If true, creates a new session, where session id will 3796 // be a server generated random id. If false, runs query with an 3797 // existing session_id passed in ConnectionProperty, otherwise runs 3798 // query in non-session mode. 3799 CreateSession bool `json:"createSession,omitempty"` 3800 3801 // DefaultDataset: [Optional] Specifies the default dataset to use for 3802 // unqualified table names in the query. Note that this does not alter 3803 // behavior of unqualified dataset names. 3804 DefaultDataset *DatasetReference `json:"defaultDataset,omitempty"` 3805 3806 // DestinationEncryptionConfiguration: Custom encryption configuration 3807 // (e.g., Cloud KMS keys). 3808 DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` 3809 3810 // DestinationTable: [Optional] Describes the table where the query 3811 // results should be stored. If not present, a new table will be created 3812 // to store the results. This property must be set for large results 3813 // that exceed the maximum response size. 3814 DestinationTable *TableReference `json:"destinationTable,omitempty"` 3815 3816 // FlattenResults: [Optional] If true and query uses legacy SQL dialect, 3817 // flattens all nested and repeated fields in the query results. 3818 // allowLargeResults must be true if this is set to false. For standard 3819 // SQL queries, this flag is ignored and results are never flattened. 3820 // 3821 // Default: true 3822 FlattenResults *bool `json:"flattenResults,omitempty"` 3823 3824 // MaximumBillingTier: [Optional] Limits the billing tier for this job. 3825 // Queries that have resource usage beyond this tier will fail (without 3826 // incurring a charge). If unspecified, this will be set to your project 3827 // default. 3828 // 3829 // Default: 1 3830 MaximumBillingTier *int64 `json:"maximumBillingTier,omitempty"` 3831 3832 // MaximumBytesBilled: [Optional] Limits the bytes billed for this job. 3833 // Queries that will have bytes billed beyond this limit will fail 3834 // (without incurring a charge). If unspecified, this will be set to 3835 // your project default. 3836 MaximumBytesBilled int64 `json:"maximumBytesBilled,omitempty,string"` 3837 3838 // ParameterMode: Standard SQL only. Set to POSITIONAL to use positional 3839 // (?) query parameters or to NAMED to use named (@myparam) query 3840 // parameters in this query. 3841 ParameterMode string `json:"parameterMode,omitempty"` 3842 3843 // PreserveNulls: [Deprecated] This property is deprecated. 3844 PreserveNulls bool `json:"preserveNulls,omitempty"` 3845 3846 // Priority: [Optional] Specifies a priority for the query. Possible 3847 // values include INTERACTIVE and BATCH. The default value is 3848 // INTERACTIVE. 3849 Priority string `json:"priority,omitempty"` 3850 3851 // Query: [Required] SQL query text to execute. The useLegacySql field 3852 // can be used to indicate whether the query uses legacy SQL or standard 3853 // SQL. 3854 Query string `json:"query,omitempty"` 3855 3856 // QueryParameters: Query parameters for standard SQL queries. 3857 QueryParameters []*QueryParameter `json:"queryParameters,omitempty"` 3858 3859 // RangePartitioning: [TrustedTester] Range partitioning specification 3860 // for this table. Only one of timePartitioning and rangePartitioning 3861 // should be specified. 3862 RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"` 3863 3864 // SchemaUpdateOptions: Allows the schema of the destination table to be 3865 // updated as a side effect of the query job. Schema update options are 3866 // supported in two cases: when writeDisposition is WRITE_APPEND; when 3867 // writeDisposition is WRITE_TRUNCATE and the destination table is a 3868 // partition of a table, specified by partition decorators. For normal 3869 // tables, WRITE_TRUNCATE will always overwrite the schema. One or more 3870 // of the following values are specified: ALLOW_FIELD_ADDITION: allow 3871 // adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow 3872 // relaxing a required field in the original schema to nullable. 3873 SchemaUpdateOptions []string `json:"schemaUpdateOptions,omitempty"` 3874 3875 // TableDefinitions: [Optional] If querying an external data source 3876 // outside of BigQuery, describes the data format, location and other 3877 // properties of the data source. By defining these properties, the data 3878 // source can then be queried as if it were a standard BigQuery table. 3879 TableDefinitions map[string]ExternalDataConfiguration `json:"tableDefinitions,omitempty"` 3880 3881 // TimePartitioning: Time-based partitioning specification for the 3882 // destination table. Only one of timePartitioning and rangePartitioning 3883 // should be specified. 3884 TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"` 3885 3886 // UseLegacySql: Specifies whether to use BigQuery's legacy SQL dialect 3887 // for this query. The default value is true. If set to false, the query 3888 // will use BigQuery's standard SQL: 3889 // https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is 3890 // set to false, the value of flattenResults is ignored; query will be 3891 // run as if flattenResults is false. 3892 // 3893 // Default: true 3894 UseLegacySql *bool `json:"useLegacySql,omitempty"` 3895 3896 // UseQueryCache: [Optional] Whether to look for the result in the query 3897 // cache. The query cache is a best-effort cache that will be flushed 3898 // whenever tables in the query are modified. Moreover, the query cache 3899 // is only available when a query does not have a destination table 3900 // specified. The default value is true. 3901 // 3902 // Default: true 3903 UseQueryCache *bool `json:"useQueryCache,omitempty"` 3904 3905 // UserDefinedFunctionResources: Describes user-defined function 3906 // resources used in the query. 3907 UserDefinedFunctionResources []*UserDefinedFunctionResource `json:"userDefinedFunctionResources,omitempty"` 3908 3909 // WriteDisposition: [Optional] Specifies the action that occurs if the 3910 // destination table already exists. The following values are supported: 3911 // WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the 3912 // table data and uses the schema from the query result. WRITE_APPEND: 3913 // If the table already exists, BigQuery appends the data to the table. 3914 // WRITE_EMPTY: If the table already exists and contains data, a 3915 // 'duplicate' error is returned in the job result. The default value is 3916 // WRITE_EMPTY. Each action is atomic and only occurs if BigQuery is 3917 // able to complete the job successfully. Creation, truncation and 3918 // append actions occur as one atomic update upon job completion. 3919 WriteDisposition string `json:"writeDisposition,omitempty"` 3920 3921 // ForceSendFields is a list of field names (e.g. "AllowLargeResults") 3922 // to unconditionally include in API requests. By default, fields with 3923 // empty values are omitted from API requests. However, any non-pointer, 3924 // non-interface field appearing in ForceSendFields will be sent to the 3925 // server regardless of whether the field is empty or not. This may be 3926 // used to include empty fields in Patch requests. 3927 ForceSendFields []string `json:"-"` 3928 3929 // NullFields is a list of field names (e.g. "AllowLargeResults") to 3930 // include in API requests with the JSON null value. By default, fields 3931 // with empty values are omitted from API requests. However, any field 3932 // with an empty value appearing in NullFields will be sent to the 3933 // server as null. It is an error if a field in this list has a 3934 // non-empty value. This may be used to include null fields in Patch 3935 // requests. 3936 NullFields []string `json:"-"` 3937} 3938 3939func (s *JobConfigurationQuery) MarshalJSON() ([]byte, error) { 3940 type NoMethod JobConfigurationQuery 3941 raw := NoMethod(*s) 3942 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3943} 3944 3945type JobConfigurationTableCopy struct { 3946 // CreateDisposition: [Optional] Specifies whether the job is allowed to 3947 // create new tables. The following values are supported: 3948 // CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the 3949 // table. CREATE_NEVER: The table must already exist. If it does not, a 3950 // 'notFound' error is returned in the job result. The default value is 3951 // CREATE_IF_NEEDED. Creation, truncation and append actions occur as 3952 // one atomic update upon job completion. 3953 CreateDisposition string `json:"createDisposition,omitempty"` 3954 3955 // DestinationEncryptionConfiguration: Custom encryption configuration 3956 // (e.g., Cloud KMS keys). 3957 DestinationEncryptionConfiguration *EncryptionConfiguration `json:"destinationEncryptionConfiguration,omitempty"` 3958 3959 // DestinationExpirationTime: [Optional] The time when the destination 3960 // table expires. Expired tables will be deleted and their storage 3961 // reclaimed. 3962 DestinationExpirationTime interface{} `json:"destinationExpirationTime,omitempty"` 3963 3964 // DestinationTable: [Required] The destination table 3965 DestinationTable *TableReference `json:"destinationTable,omitempty"` 3966 3967 // OperationType: [Optional] Supported operation types in table copy 3968 // job. 3969 OperationType string `json:"operationType,omitempty"` 3970 3971 // SourceTable: [Pick one] Source table to copy. 3972 SourceTable *TableReference `json:"sourceTable,omitempty"` 3973 3974 // SourceTables: [Pick one] Source tables to copy. 3975 SourceTables []*TableReference `json:"sourceTables,omitempty"` 3976 3977 // WriteDisposition: [Optional] Specifies the action that occurs if the 3978 // destination table already exists. The following values are supported: 3979 // WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the 3980 // table data. WRITE_APPEND: If the table already exists, BigQuery 3981 // appends the data to the table. WRITE_EMPTY: If the table already 3982 // exists and contains data, a 'duplicate' error is returned in the job 3983 // result. The default value is WRITE_EMPTY. Each action is atomic and 3984 // only occurs if BigQuery is able to complete the job successfully. 3985 // Creation, truncation and append actions occur as one atomic update 3986 // upon job completion. 3987 WriteDisposition string `json:"writeDisposition,omitempty"` 3988 3989 // ForceSendFields is a list of field names (e.g. "CreateDisposition") 3990 // to unconditionally include in API requests. By default, fields with 3991 // empty values are omitted from API requests. However, any non-pointer, 3992 // non-interface field appearing in ForceSendFields will be sent to the 3993 // server regardless of whether the field is empty or not. This may be 3994 // used to include empty fields in Patch requests. 3995 ForceSendFields []string `json:"-"` 3996 3997 // NullFields is a list of field names (e.g. "CreateDisposition") to 3998 // include in API requests with the JSON null value. By default, fields 3999 // with empty values are omitted from API requests. However, any field 4000 // with an empty value appearing in NullFields will be sent to the 4001 // server as null. It is an error if a field in this list has a 4002 // non-empty value. This may be used to include null fields in Patch 4003 // requests. 4004 NullFields []string `json:"-"` 4005} 4006 4007func (s *JobConfigurationTableCopy) MarshalJSON() ([]byte, error) { 4008 type NoMethod JobConfigurationTableCopy 4009 raw := NoMethod(*s) 4010 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4011} 4012 4013type JobList struct { 4014 // Etag: A hash of this page of results. 4015 Etag string `json:"etag,omitempty"` 4016 4017 // Jobs: List of jobs that were requested. 4018 Jobs []*JobListJobs `json:"jobs,omitempty"` 4019 4020 // Kind: The resource type of the response. 4021 Kind string `json:"kind,omitempty"` 4022 4023 // NextPageToken: A token to request the next page of results. 4024 NextPageToken string `json:"nextPageToken,omitempty"` 4025 4026 // ServerResponse contains the HTTP response code and headers from the 4027 // server. 4028 googleapi.ServerResponse `json:"-"` 4029 4030 // ForceSendFields is a list of field names (e.g. "Etag") to 4031 // unconditionally include in API requests. By default, fields with 4032 // empty values are omitted from API requests. However, any non-pointer, 4033 // non-interface field appearing in ForceSendFields will be sent to the 4034 // server regardless of whether the field is empty or not. This may be 4035 // used to include empty fields in Patch requests. 4036 ForceSendFields []string `json:"-"` 4037 4038 // NullFields is a list of field names (e.g. "Etag") to include in API 4039 // requests with the JSON null value. By default, fields with empty 4040 // values are omitted from API requests. However, any field with an 4041 // empty value appearing in NullFields will be sent to the server as 4042 // null. It is an error if a field in this list has a non-empty value. 4043 // This may be used to include null fields in Patch requests. 4044 NullFields []string `json:"-"` 4045} 4046 4047func (s *JobList) MarshalJSON() ([]byte, error) { 4048 type NoMethod JobList 4049 raw := NoMethod(*s) 4050 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4051} 4052 4053type JobListJobs struct { 4054 // Configuration: [Full-projection-only] Specifies the job 4055 // configuration. 4056 Configuration *JobConfiguration `json:"configuration,omitempty"` 4057 4058 // ErrorResult: A result object that will be present only if the job has 4059 // failed. 4060 ErrorResult *ErrorProto `json:"errorResult,omitempty"` 4061 4062 // Id: Unique opaque ID of the job. 4063 Id string `json:"id,omitempty"` 4064 4065 // JobReference: Job reference uniquely identifying the job. 4066 JobReference *JobReference `json:"jobReference,omitempty"` 4067 4068 // Kind: The resource type. 4069 Kind string `json:"kind,omitempty"` 4070 4071 // State: Running state of the job. When the state is DONE, errorResult 4072 // can be checked to determine whether the job succeeded or failed. 4073 State string `json:"state,omitempty"` 4074 4075 // Statistics: [Output-only] Information about the job, including 4076 // starting time and ending time of the job. 4077 Statistics *JobStatistics `json:"statistics,omitempty"` 4078 4079 // Status: [Full-projection-only] Describes the state of the job. 4080 Status *JobStatus `json:"status,omitempty"` 4081 4082 // UserEmail: [Full-projection-only] Email address of the user who ran 4083 // the job. 4084 UserEmail string `json:"user_email,omitempty"` 4085 4086 // ForceSendFields is a list of field names (e.g. "Configuration") to 4087 // unconditionally include in API requests. By default, fields with 4088 // empty values are omitted from API requests. However, any non-pointer, 4089 // non-interface field appearing in ForceSendFields will be sent to the 4090 // server regardless of whether the field is empty or not. This may be 4091 // used to include empty fields in Patch requests. 4092 ForceSendFields []string `json:"-"` 4093 4094 // NullFields is a list of field names (e.g. "Configuration") to include 4095 // in API requests with the JSON null value. By default, fields with 4096 // empty values are omitted from API requests. However, any field with 4097 // an empty value appearing in NullFields will be sent to the server as 4098 // null. It is an error if a field in this list has a non-empty value. 4099 // This may be used to include null fields in Patch requests. 4100 NullFields []string `json:"-"` 4101} 4102 4103func (s *JobListJobs) MarshalJSON() ([]byte, error) { 4104 type NoMethod JobListJobs 4105 raw := NoMethod(*s) 4106 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4107} 4108 4109type JobReference struct { 4110 // JobId: [Required] The ID of the job. The ID must contain only letters 4111 // (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). The 4112 // maximum length is 1,024 characters. 4113 JobId string `json:"jobId,omitempty"` 4114 4115 // Location: The geographic location of the job. See details at 4116 // https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 4117 Location string `json:"location,omitempty"` 4118 4119 // ProjectId: [Required] The ID of the project containing this job. 4120 ProjectId string `json:"projectId,omitempty"` 4121 4122 // ForceSendFields is a list of field names (e.g. "JobId") to 4123 // unconditionally include in API requests. By default, fields with 4124 // empty values are omitted from API requests. However, any non-pointer, 4125 // non-interface field appearing in ForceSendFields will be sent to the 4126 // server regardless of whether the field is empty or not. This may be 4127 // used to include empty fields in Patch requests. 4128 ForceSendFields []string `json:"-"` 4129 4130 // NullFields is a list of field names (e.g. "JobId") to include in API 4131 // requests with the JSON null value. By default, fields with empty 4132 // values are omitted from API requests. However, any field with an 4133 // empty value appearing in NullFields will be sent to the server as 4134 // null. It is an error if a field in this list has a non-empty value. 4135 // This may be used to include null fields in Patch requests. 4136 NullFields []string `json:"-"` 4137} 4138 4139func (s *JobReference) MarshalJSON() ([]byte, error) { 4140 type NoMethod JobReference 4141 raw := NoMethod(*s) 4142 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4143} 4144 4145type JobStatistics struct { 4146 // CompletionRatio: [TrustedTester] [Output-only] Job progress (0.0 -> 4147 // 1.0) for LOAD and EXTRACT jobs. 4148 CompletionRatio float64 `json:"completionRatio,omitempty"` 4149 4150 // CreationTime: [Output-only] Creation time of this job, in 4151 // milliseconds since the epoch. This field will be present on all jobs. 4152 CreationTime int64 `json:"creationTime,omitempty,string"` 4153 4154 // EndTime: [Output-only] End time of this job, in milliseconds since 4155 // the epoch. This field will be present whenever a job is in the DONE 4156 // state. 4157 EndTime int64 `json:"endTime,omitempty,string"` 4158 4159 // Extract: [Output-only] Statistics for an extract job. 4160 Extract *JobStatistics4 `json:"extract,omitempty"` 4161 4162 // Load: [Output-only] Statistics for a load job. 4163 Load *JobStatistics3 `json:"load,omitempty"` 4164 4165 // NumChildJobs: [Output-only] Number of child jobs executed. 4166 NumChildJobs int64 `json:"numChildJobs,omitempty,string"` 4167 4168 // ParentJobId: [Output-only] If this is a child job, the id of the 4169 // parent. 4170 ParentJobId string `json:"parentJobId,omitempty"` 4171 4172 // Query: [Output-only] Statistics for a query job. 4173 Query *JobStatistics2 `json:"query,omitempty"` 4174 4175 // QuotaDeferments: [Output-only] Quotas which delayed this job's start 4176 // time. 4177 QuotaDeferments []string `json:"quotaDeferments,omitempty"` 4178 4179 // ReservationUsage: [Output-only] Job resource usage breakdown by 4180 // reservation. 4181 ReservationUsage []*JobStatisticsReservationUsage `json:"reservationUsage,omitempty"` 4182 4183 // ReservationId: [Output-only] Name of the primary reservation assigned 4184 // to this job. Note that this could be different than reservations 4185 // reported in the reservation usage field if parent reservations were 4186 // used to execute this job. 4187 ReservationId string `json:"reservation_id,omitempty"` 4188 4189 // RowLevelSecurityStatistics: [Output-only] [Preview] Statistics for 4190 // row-level security. Present only for query and extract jobs. 4191 RowLevelSecurityStatistics *RowLevelSecurityStatistics `json:"rowLevelSecurityStatistics,omitempty"` 4192 4193 // ScriptStatistics: [Output-only] Statistics for a child job of a 4194 // script. 4195 ScriptStatistics *ScriptStatistics `json:"scriptStatistics,omitempty"` 4196 4197 // SessionInfoTemplate: [Output-only] [Preview] Information of the 4198 // session if this job is part of one. 4199 SessionInfoTemplate *SessionInfo `json:"sessionInfoTemplate,omitempty"` 4200 4201 // StartTime: [Output-only] Start time of this job, in milliseconds 4202 // since the epoch. This field will be present when the job transitions 4203 // from the PENDING state to either RUNNING or DONE. 4204 StartTime int64 `json:"startTime,omitempty,string"` 4205 4206 // TotalBytesProcessed: [Output-only] [Deprecated] Use the bytes 4207 // processed in the query statistics instead. 4208 TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` 4209 4210 // TotalSlotMs: [Output-only] Slot-milliseconds for the job. 4211 TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"` 4212 4213 // TransactionInfoTemplate: [Output-only] [Alpha] Information of the 4214 // multi-statement transaction if this job is part of one. 4215 TransactionInfoTemplate *TransactionInfo `json:"transactionInfoTemplate,omitempty"` 4216 4217 // ForceSendFields is a list of field names (e.g. "CompletionRatio") to 4218 // unconditionally include in API requests. By default, fields with 4219 // empty values are omitted from API requests. However, any non-pointer, 4220 // non-interface field appearing in ForceSendFields will be sent to the 4221 // server regardless of whether the field is empty or not. This may be 4222 // used to include empty fields in Patch requests. 4223 ForceSendFields []string `json:"-"` 4224 4225 // NullFields is a list of field names (e.g. "CompletionRatio") to 4226 // include in API requests with the JSON null value. By default, fields 4227 // with empty values are omitted from API requests. However, any field 4228 // with an empty value appearing in NullFields will be sent to the 4229 // server as null. It is an error if a field in this list has a 4230 // non-empty value. This may be used to include null fields in Patch 4231 // requests. 4232 NullFields []string `json:"-"` 4233} 4234 4235func (s *JobStatistics) MarshalJSON() ([]byte, error) { 4236 type NoMethod JobStatistics 4237 raw := NoMethod(*s) 4238 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4239} 4240 4241func (s *JobStatistics) UnmarshalJSON(data []byte) error { 4242 type NoMethod JobStatistics 4243 var s1 struct { 4244 CompletionRatio gensupport.JSONFloat64 `json:"completionRatio"` 4245 *NoMethod 4246 } 4247 s1.NoMethod = (*NoMethod)(s) 4248 if err := json.Unmarshal(data, &s1); err != nil { 4249 return err 4250 } 4251 s.CompletionRatio = float64(s1.CompletionRatio) 4252 return nil 4253} 4254 4255type JobStatisticsReservationUsage struct { 4256 // Name: [Output-only] Reservation name or "unreserved" for on-demand 4257 // resources usage. 4258 Name string `json:"name,omitempty"` 4259 4260 // SlotMs: [Output-only] Slot-milliseconds the job spent in the given 4261 // reservation. 4262 SlotMs int64 `json:"slotMs,omitempty,string"` 4263 4264 // ForceSendFields is a list of field names (e.g. "Name") to 4265 // unconditionally include in API requests. By default, fields with 4266 // empty values are omitted from API requests. However, any non-pointer, 4267 // non-interface field appearing in ForceSendFields will be sent to the 4268 // server regardless of whether the field is empty or not. This may be 4269 // used to include empty fields in Patch requests. 4270 ForceSendFields []string `json:"-"` 4271 4272 // NullFields is a list of field names (e.g. "Name") to include in API 4273 // requests with the JSON null value. By default, fields with empty 4274 // values are omitted from API requests. However, any field with an 4275 // empty value appearing in NullFields will be sent to the server as 4276 // null. It is an error if a field in this list has a non-empty value. 4277 // This may be used to include null fields in Patch requests. 4278 NullFields []string `json:"-"` 4279} 4280 4281func (s *JobStatisticsReservationUsage) MarshalJSON() ([]byte, error) { 4282 type NoMethod JobStatisticsReservationUsage 4283 raw := NoMethod(*s) 4284 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4285} 4286 4287type JobStatistics2 struct { 4288 // BillingTier: [Output-only] Billing tier for the job. 4289 BillingTier int64 `json:"billingTier,omitempty"` 4290 4291 // CacheHit: [Output-only] Whether the query result was fetched from the 4292 // query cache. 4293 CacheHit bool `json:"cacheHit,omitempty"` 4294 4295 // DdlAffectedRowAccessPolicyCount: [Output-only] [Preview] The number 4296 // of row access policies affected by a DDL statement. Present only for 4297 // DROP ALL ROW ACCESS POLICIES queries. 4298 DdlAffectedRowAccessPolicyCount int64 `json:"ddlAffectedRowAccessPolicyCount,omitempty,string"` 4299 4300 // DdlOperationPerformed: The DDL operation performed, possibly 4301 // dependent on the pre-existence of the DDL target. Possible values 4302 // (new values might be added in the future): "CREATE": The query 4303 // created the DDL target. "SKIP": No-op. Example cases: the query is 4304 // CREATE TABLE IF NOT EXISTS while the table already exists, or the 4305 // query is DROP TABLE IF EXISTS while the table does not exist. 4306 // "REPLACE": The query replaced the DDL target. Example case: the query 4307 // is CREATE OR REPLACE TABLE, and the table already exists. "DROP": The 4308 // query deleted the DDL target. 4309 DdlOperationPerformed string `json:"ddlOperationPerformed,omitempty"` 4310 4311 // DdlTargetDataset: [Output-only] The DDL target dataset. Present only 4312 // for CREATE/ALTER/DROP SCHEMA queries. 4313 DdlTargetDataset *DatasetReference `json:"ddlTargetDataset,omitempty"` 4314 4315 // DdlTargetRoutine: The DDL target routine. Present only for 4316 // CREATE/DROP FUNCTION/PROCEDURE queries. 4317 DdlTargetRoutine *RoutineReference `json:"ddlTargetRoutine,omitempty"` 4318 4319 // DdlTargetRowAccessPolicy: [Output-only] [Preview] The DDL target row 4320 // access policy. Present only for CREATE/DROP ROW ACCESS POLICY 4321 // queries. 4322 DdlTargetRowAccessPolicy *RowAccessPolicyReference `json:"ddlTargetRowAccessPolicy,omitempty"` 4323 4324 // DdlTargetTable: [Output-only] The DDL target table. Present only for 4325 // CREATE/DROP TABLE/VIEW and DROP ALL ROW ACCESS POLICIES queries. 4326 DdlTargetTable *TableReference `json:"ddlTargetTable,omitempty"` 4327 4328 // EstimatedBytesProcessed: [Output-only] The original estimate of bytes 4329 // processed for the job. 4330 EstimatedBytesProcessed int64 `json:"estimatedBytesProcessed,omitempty,string"` 4331 4332 // ModelTraining: [Output-only, Beta] Information about create model 4333 // query job progress. 4334 ModelTraining *BigQueryModelTraining `json:"modelTraining,omitempty"` 4335 4336 // ModelTrainingCurrentIteration: [Output-only, Beta] Deprecated; do not 4337 // use. 4338 ModelTrainingCurrentIteration int64 `json:"modelTrainingCurrentIteration,omitempty"` 4339 4340 // ModelTrainingExpectedTotalIteration: [Output-only, Beta] Deprecated; 4341 // do not use. 4342 ModelTrainingExpectedTotalIteration int64 `json:"modelTrainingExpectedTotalIteration,omitempty,string"` 4343 4344 // NumDmlAffectedRows: [Output-only] The number of rows affected by a 4345 // DML statement. Present only for DML statements INSERT, UPDATE or 4346 // DELETE. 4347 NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"` 4348 4349 // QueryPlan: [Output-only] Describes execution plan for the query. 4350 QueryPlan []*ExplainQueryStage `json:"queryPlan,omitempty"` 4351 4352 // ReferencedRoutines: [Output-only] Referenced routines (persistent 4353 // user-defined functions and stored procedures) for the job. 4354 ReferencedRoutines []*RoutineReference `json:"referencedRoutines,omitempty"` 4355 4356 // ReferencedTables: [Output-only] Referenced tables for the job. 4357 // Queries that reference more than 50 tables will not have a complete 4358 // list. 4359 ReferencedTables []*TableReference `json:"referencedTables,omitempty"` 4360 4361 // ReservationUsage: [Output-only] Job resource usage breakdown by 4362 // reservation. 4363 ReservationUsage []*JobStatistics2ReservationUsage `json:"reservationUsage,omitempty"` 4364 4365 // Schema: [Output-only] The schema of the results. Present only for 4366 // successful dry run of non-legacy SQL queries. 4367 Schema *TableSchema `json:"schema,omitempty"` 4368 4369 // StatementType: The type of query statement, if valid. Possible values 4370 // (new values might be added in the future): "SELECT": SELECT query. 4371 // "INSERT": INSERT query; see 4372 // https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language. 4373 // "UPDATE": UPDATE query; see 4374 // https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language. 4375 // "DELETE": DELETE query; see 4376 // https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language. 4377 // "MERGE": MERGE query; see 4378 // https://cloud.google.com/bigquery/docs/reference/standard-sql/data-manipulation-language. 4379 // "ALTER_TABLE": ALTER TABLE query. "ALTER_VIEW": ALTER VIEW query. 4380 // "ASSERT": ASSERT condition AS 'description'. "CREATE_FUNCTION": 4381 // CREATE FUNCTION query. "CREATE_MODEL": CREATE [OR REPLACE] MODEL ... 4382 // AS SELECT ... . "CREATE_PROCEDURE": CREATE PROCEDURE query. 4383 // "CREATE_TABLE": CREATE [OR REPLACE] TABLE without AS SELECT. 4384 // "CREATE_TABLE_AS_SELECT": CREATE [OR REPLACE] TABLE ... AS SELECT ... 4385 // . "CREATE_VIEW": CREATE [OR REPLACE] VIEW ... AS SELECT ... . 4386 // "DROP_FUNCTION" : DROP FUNCTION query. "DROP_PROCEDURE": DROP 4387 // PROCEDURE query. "DROP_TABLE": DROP TABLE query. "DROP_VIEW": DROP 4388 // VIEW query. 4389 StatementType string `json:"statementType,omitempty"` 4390 4391 // Timeline: [Output-only] [Beta] Describes a timeline of job execution. 4392 Timeline []*QueryTimelineSample `json:"timeline,omitempty"` 4393 4394 // TotalBytesBilled: [Output-only] Total bytes billed for the job. 4395 TotalBytesBilled int64 `json:"totalBytesBilled,omitempty,string"` 4396 4397 // TotalBytesProcessed: [Output-only] Total bytes processed for the job. 4398 TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` 4399 4400 // TotalBytesProcessedAccuracy: [Output-only] For dry-run jobs, 4401 // totalBytesProcessed is an estimate and this field specifies the 4402 // accuracy of the estimate. Possible values can be: UNKNOWN: accuracy 4403 // of the estimate is unknown. PRECISE: estimate is precise. 4404 // LOWER_BOUND: estimate is lower bound of what the query would cost. 4405 // UPPER_BOUND: estimate is upper bound of what the query would cost. 4406 TotalBytesProcessedAccuracy string `json:"totalBytesProcessedAccuracy,omitempty"` 4407 4408 // TotalPartitionsProcessed: [Output-only] Total number of partitions 4409 // processed from all partitioned tables referenced in the job. 4410 TotalPartitionsProcessed int64 `json:"totalPartitionsProcessed,omitempty,string"` 4411 4412 // TotalSlotMs: [Output-only] Slot-milliseconds for the job. 4413 TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"` 4414 4415 // UndeclaredQueryParameters: Standard SQL only: list of undeclared 4416 // query parameters detected during a dry run validation. 4417 UndeclaredQueryParameters []*QueryParameter `json:"undeclaredQueryParameters,omitempty"` 4418 4419 // ForceSendFields is a list of field names (e.g. "BillingTier") to 4420 // unconditionally include in API requests. By default, fields with 4421 // empty values are omitted from API requests. However, any non-pointer, 4422 // non-interface field appearing in ForceSendFields will be sent to the 4423 // server regardless of whether the field is empty or not. This may be 4424 // used to include empty fields in Patch requests. 4425 ForceSendFields []string `json:"-"` 4426 4427 // NullFields is a list of field names (e.g. "BillingTier") to include 4428 // in API requests with the JSON null value. By default, fields with 4429 // empty values are omitted from API requests. However, any field with 4430 // an empty value appearing in NullFields will be sent to the server as 4431 // null. It is an error if a field in this list has a non-empty value. 4432 // This may be used to include null fields in Patch requests. 4433 NullFields []string `json:"-"` 4434} 4435 4436func (s *JobStatistics2) MarshalJSON() ([]byte, error) { 4437 type NoMethod JobStatistics2 4438 raw := NoMethod(*s) 4439 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4440} 4441 4442type JobStatistics2ReservationUsage struct { 4443 // Name: [Output-only] Reservation name or "unreserved" for on-demand 4444 // resources usage. 4445 Name string `json:"name,omitempty"` 4446 4447 // SlotMs: [Output-only] Slot-milliseconds the job spent in the given 4448 // reservation. 4449 SlotMs int64 `json:"slotMs,omitempty,string"` 4450 4451 // ForceSendFields is a list of field names (e.g. "Name") to 4452 // unconditionally include in API requests. By default, fields with 4453 // empty values are omitted from API requests. However, any non-pointer, 4454 // non-interface field appearing in ForceSendFields will be sent to the 4455 // server regardless of whether the field is empty or not. This may be 4456 // used to include empty fields in Patch requests. 4457 ForceSendFields []string `json:"-"` 4458 4459 // NullFields is a list of field names (e.g. "Name") to include in API 4460 // requests with the JSON null value. By default, fields with empty 4461 // values are omitted from API requests. However, any field with an 4462 // empty value appearing in NullFields will be sent to the server as 4463 // null. It is an error if a field in this list has a non-empty value. 4464 // This may be used to include null fields in Patch requests. 4465 NullFields []string `json:"-"` 4466} 4467 4468func (s *JobStatistics2ReservationUsage) MarshalJSON() ([]byte, error) { 4469 type NoMethod JobStatistics2ReservationUsage 4470 raw := NoMethod(*s) 4471 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4472} 4473 4474type JobStatistics3 struct { 4475 // BadRecords: [Output-only] The number of bad records encountered. Note 4476 // that if the job has failed because of more bad records encountered 4477 // than the maximum allowed in the load job configuration, then this 4478 // number can be less than the total number of bad records present in 4479 // the input data. 4480 BadRecords int64 `json:"badRecords,omitempty,string"` 4481 4482 // InputFileBytes: [Output-only] Number of bytes of source data in a 4483 // load job. 4484 InputFileBytes int64 `json:"inputFileBytes,omitempty,string"` 4485 4486 // InputFiles: [Output-only] Number of source files in a load job. 4487 InputFiles int64 `json:"inputFiles,omitempty,string"` 4488 4489 // OutputBytes: [Output-only] Size of the loaded data in bytes. Note 4490 // that while a load job is in the running state, this value may change. 4491 OutputBytes int64 `json:"outputBytes,omitempty,string"` 4492 4493 // OutputRows: [Output-only] Number of rows imported in a load job. Note 4494 // that while an import job is in the running state, this value may 4495 // change. 4496 OutputRows int64 `json:"outputRows,omitempty,string"` 4497 4498 // ForceSendFields is a list of field names (e.g. "BadRecords") to 4499 // unconditionally include in API requests. By default, fields with 4500 // empty values are omitted from API requests. However, any non-pointer, 4501 // non-interface field appearing in ForceSendFields will be sent to the 4502 // server regardless of whether the field is empty or not. This may be 4503 // used to include empty fields in Patch requests. 4504 ForceSendFields []string `json:"-"` 4505 4506 // NullFields is a list of field names (e.g. "BadRecords") to include in 4507 // API requests with the JSON null value. By default, fields with empty 4508 // values are omitted from API requests. However, any field with an 4509 // empty value appearing in NullFields will be sent to the server as 4510 // null. It is an error if a field in this list has a non-empty value. 4511 // This may be used to include null fields in Patch requests. 4512 NullFields []string `json:"-"` 4513} 4514 4515func (s *JobStatistics3) MarshalJSON() ([]byte, error) { 4516 type NoMethod JobStatistics3 4517 raw := NoMethod(*s) 4518 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4519} 4520 4521type JobStatistics4 struct { 4522 // DestinationUriFileCounts: [Output-only] Number of files per 4523 // destination URI or URI pattern specified in the extract 4524 // configuration. These values will be in the same order as the URIs 4525 // specified in the 'destinationUris' field. 4526 DestinationUriFileCounts googleapi.Int64s `json:"destinationUriFileCounts,omitempty"` 4527 4528 // InputBytes: [Output-only] Number of user bytes extracted into the 4529 // result. This is the byte count as computed by BigQuery for billing 4530 // purposes. 4531 InputBytes int64 `json:"inputBytes,omitempty,string"` 4532 4533 // ForceSendFields is a list of field names (e.g. 4534 // "DestinationUriFileCounts") to unconditionally include in API 4535 // requests. By default, fields with empty values are omitted from API 4536 // requests. However, any non-pointer, non-interface field appearing in 4537 // ForceSendFields will be sent to the server regardless of whether the 4538 // field is empty or not. This may be used to include empty fields in 4539 // Patch requests. 4540 ForceSendFields []string `json:"-"` 4541 4542 // NullFields is a list of field names (e.g. "DestinationUriFileCounts") 4543 // to include in API requests with the JSON null value. By default, 4544 // fields with empty values are omitted from API requests. However, any 4545 // field with an empty value appearing in NullFields will be sent to the 4546 // server as null. It is an error if a field in this list has a 4547 // non-empty value. This may be used to include null fields in Patch 4548 // requests. 4549 NullFields []string `json:"-"` 4550} 4551 4552func (s *JobStatistics4) MarshalJSON() ([]byte, error) { 4553 type NoMethod JobStatistics4 4554 raw := NoMethod(*s) 4555 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4556} 4557 4558type JobStatus struct { 4559 // ErrorResult: [Output-only] Final error result of the job. If present, 4560 // indicates that the job has completed and was unsuccessful. 4561 ErrorResult *ErrorProto `json:"errorResult,omitempty"` 4562 4563 // Errors: [Output-only] The first errors encountered during the running 4564 // of the job. The final message includes the number of errors that 4565 // caused the process to stop. Errors here do not necessarily mean that 4566 // the job has completed or was unsuccessful. 4567 Errors []*ErrorProto `json:"errors,omitempty"` 4568 4569 // State: [Output-only] Running state of the job. 4570 State string `json:"state,omitempty"` 4571 4572 // ForceSendFields is a list of field names (e.g. "ErrorResult") to 4573 // unconditionally include in API requests. By default, fields with 4574 // empty values are omitted from API requests. However, any non-pointer, 4575 // non-interface field appearing in ForceSendFields will be sent to the 4576 // server regardless of whether the field is empty or not. This may be 4577 // used to include empty fields in Patch requests. 4578 ForceSendFields []string `json:"-"` 4579 4580 // NullFields is a list of field names (e.g. "ErrorResult") to include 4581 // in API requests with the JSON null value. By default, fields with 4582 // empty values are omitted from API requests. However, any field with 4583 // an empty value appearing in NullFields will be sent to the server as 4584 // null. It is an error if a field in this list has a non-empty value. 4585 // This may be used to include null fields in Patch requests. 4586 NullFields []string `json:"-"` 4587} 4588 4589func (s *JobStatus) MarshalJSON() ([]byte, error) { 4590 type NoMethod JobStatus 4591 raw := NoMethod(*s) 4592 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4593} 4594 4595type JsonValue interface{} 4596 4597type ListModelsResponse struct { 4598 // Models: Models in the requested dataset. Only the following fields 4599 // are populated: model_reference, model_type, creation_time, 4600 // last_modified_time and labels. 4601 Models []*Model `json:"models,omitempty"` 4602 4603 // NextPageToken: A token to request the next page of results. 4604 NextPageToken string `json:"nextPageToken,omitempty"` 4605 4606 // ServerResponse contains the HTTP response code and headers from the 4607 // server. 4608 googleapi.ServerResponse `json:"-"` 4609 4610 // ForceSendFields is a list of field names (e.g. "Models") to 4611 // unconditionally include in API requests. By default, fields with 4612 // empty values are omitted from API requests. However, any non-pointer, 4613 // non-interface field appearing in ForceSendFields will be sent to the 4614 // server regardless of whether the field is empty or not. This may be 4615 // used to include empty fields in Patch requests. 4616 ForceSendFields []string `json:"-"` 4617 4618 // NullFields is a list of field names (e.g. "Models") to include in API 4619 // requests with the JSON null value. By default, fields with empty 4620 // values are omitted from API requests. However, any field with an 4621 // empty value appearing in NullFields will be sent to the server as 4622 // null. It is an error if a field in this list has a non-empty value. 4623 // This may be used to include null fields in Patch requests. 4624 NullFields []string `json:"-"` 4625} 4626 4627func (s *ListModelsResponse) MarshalJSON() ([]byte, error) { 4628 type NoMethod ListModelsResponse 4629 raw := NoMethod(*s) 4630 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4631} 4632 4633type ListRoutinesResponse struct { 4634 // NextPageToken: A token to request the next page of results. 4635 NextPageToken string `json:"nextPageToken,omitempty"` 4636 4637 // Routines: Routines in the requested dataset. Unless read_mask is set 4638 // in the request, only the following fields are populated: etag, 4639 // project_id, dataset_id, routine_id, routine_type, creation_time, 4640 // last_modified_time, and language. 4641 Routines []*Routine `json:"routines,omitempty"` 4642 4643 // ServerResponse contains the HTTP response code and headers from the 4644 // server. 4645 googleapi.ServerResponse `json:"-"` 4646 4647 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 4648 // unconditionally include in API requests. By default, fields with 4649 // empty values are omitted from API requests. However, any non-pointer, 4650 // non-interface field appearing in ForceSendFields will be sent to the 4651 // server regardless of whether the field is empty or not. This may be 4652 // used to include empty fields in Patch requests. 4653 ForceSendFields []string `json:"-"` 4654 4655 // NullFields is a list of field names (e.g. "NextPageToken") to include 4656 // in API requests with the JSON null value. By default, fields with 4657 // empty values are omitted from API requests. However, any field with 4658 // an empty value appearing in NullFields will be sent to the server as 4659 // null. It is an error if a field in this list has a non-empty value. 4660 // This may be used to include null fields in Patch requests. 4661 NullFields []string `json:"-"` 4662} 4663 4664func (s *ListRoutinesResponse) MarshalJSON() ([]byte, error) { 4665 type NoMethod ListRoutinesResponse 4666 raw := NoMethod(*s) 4667 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4668} 4669 4670// ListRowAccessPoliciesResponse: Response message for the 4671// ListRowAccessPolicies method. 4672type ListRowAccessPoliciesResponse struct { 4673 // NextPageToken: A token to request the next page of results. 4674 NextPageToken string `json:"nextPageToken,omitempty"` 4675 4676 // RowAccessPolicies: Row access policies on the requested table. 4677 RowAccessPolicies []*RowAccessPolicy `json:"rowAccessPolicies,omitempty"` 4678 4679 // ServerResponse contains the HTTP response code and headers from the 4680 // server. 4681 googleapi.ServerResponse `json:"-"` 4682 4683 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 4684 // unconditionally include in API requests. By default, fields with 4685 // empty values are omitted from API requests. However, any non-pointer, 4686 // non-interface field appearing in ForceSendFields will be sent to the 4687 // server regardless of whether the field is empty or not. This may be 4688 // used to include empty fields in Patch requests. 4689 ForceSendFields []string `json:"-"` 4690 4691 // NullFields is a list of field names (e.g. "NextPageToken") to include 4692 // in API requests with the JSON null value. By default, fields with 4693 // empty values are omitted from API requests. However, any field with 4694 // an empty value appearing in NullFields will be sent to the server as 4695 // null. It is an error if a field in this list has a non-empty value. 4696 // This may be used to include null fields in Patch requests. 4697 NullFields []string `json:"-"` 4698} 4699 4700func (s *ListRowAccessPoliciesResponse) MarshalJSON() ([]byte, error) { 4701 type NoMethod ListRowAccessPoliciesResponse 4702 raw := NoMethod(*s) 4703 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4704} 4705 4706// LocationMetadata: BigQuery-specific metadata about a location. This 4707// will be set on google.cloud.location.Location.metadata in Cloud 4708// Location API responses. 4709type LocationMetadata struct { 4710 // LegacyLocationId: The legacy BigQuery location ID, e.g. “EU” for 4711 // the “europe” location. This is for any API consumers that need 4712 // the legacy “US” and “EU” locations. 4713 LegacyLocationId string `json:"legacyLocationId,omitempty"` 4714 4715 // ForceSendFields is a list of field names (e.g. "LegacyLocationId") to 4716 // unconditionally include in API requests. By default, fields with 4717 // empty values are omitted from API requests. However, any non-pointer, 4718 // non-interface field appearing in ForceSendFields will be sent to the 4719 // server regardless of whether the field is empty or not. This may be 4720 // used to include empty fields in Patch requests. 4721 ForceSendFields []string `json:"-"` 4722 4723 // NullFields is a list of field names (e.g. "LegacyLocationId") to 4724 // include in API requests with the JSON null value. By default, fields 4725 // with empty values are omitted from API requests. However, any field 4726 // with an empty value appearing in NullFields will be sent to the 4727 // server as null. It is an error if a field in this list has a 4728 // non-empty value. This may be used to include null fields in Patch 4729 // requests. 4730 NullFields []string `json:"-"` 4731} 4732 4733func (s *LocationMetadata) MarshalJSON() ([]byte, error) { 4734 type NoMethod LocationMetadata 4735 raw := NoMethod(*s) 4736 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4737} 4738 4739type MaterializedViewDefinition struct { 4740 // EnableRefresh: [Optional] [TrustedTester] Enable automatic refresh of 4741 // the materialized view when the base table is updated. The default 4742 // value is "true". 4743 EnableRefresh bool `json:"enableRefresh,omitempty"` 4744 4745 // LastRefreshTime: [Output-only] [TrustedTester] The time when this 4746 // materialized view was last modified, in milliseconds since the epoch. 4747 LastRefreshTime int64 `json:"lastRefreshTime,omitempty,string"` 4748 4749 // Query: [Required] A query whose result is persisted. 4750 Query string `json:"query,omitempty"` 4751 4752 // RefreshIntervalMs: [Optional] [TrustedTester] The maximum frequency 4753 // at which this materialized view will be refreshed. The default value 4754 // is "1800000" (30 minutes). 4755 RefreshIntervalMs int64 `json:"refreshIntervalMs,omitempty,string"` 4756 4757 // ForceSendFields is a list of field names (e.g. "EnableRefresh") to 4758 // unconditionally include in API requests. By default, fields with 4759 // empty values are omitted from API requests. However, any non-pointer, 4760 // non-interface field appearing in ForceSendFields will be sent to the 4761 // server regardless of whether the field is empty or not. This may be 4762 // used to include empty fields in Patch requests. 4763 ForceSendFields []string `json:"-"` 4764 4765 // NullFields is a list of field names (e.g. "EnableRefresh") to include 4766 // in API requests with the JSON null value. By default, fields with 4767 // empty values are omitted from API requests. However, any field with 4768 // an empty value appearing in NullFields will be sent to the server as 4769 // null. It is an error if a field in this list has a non-empty value. 4770 // This may be used to include null fields in Patch requests. 4771 NullFields []string `json:"-"` 4772} 4773 4774func (s *MaterializedViewDefinition) MarshalJSON() ([]byte, error) { 4775 type NoMethod MaterializedViewDefinition 4776 raw := NoMethod(*s) 4777 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4778} 4779 4780type Model struct { 4781 // BestTrialId: The best trial_id across all training runs. 4782 BestTrialId int64 `json:"bestTrialId,omitempty,string"` 4783 4784 // CreationTime: Output only. The time when this model was created, in 4785 // millisecs since the epoch. 4786 CreationTime int64 `json:"creationTime,omitempty,string"` 4787 4788 // Description: Optional. A user-friendly description of this model. 4789 Description string `json:"description,omitempty"` 4790 4791 // EncryptionConfiguration: Custom encryption configuration (e.g., Cloud 4792 // KMS keys). This shows the encryption configuration of the model data 4793 // while stored in BigQuery storage. This field can be used with 4794 // PatchModel to update encryption key for an already encrypted model. 4795 EncryptionConfiguration *EncryptionConfiguration `json:"encryptionConfiguration,omitempty"` 4796 4797 // Etag: Output only. A hash of this resource. 4798 Etag string `json:"etag,omitempty"` 4799 4800 // ExpirationTime: Optional. The time when this model expires, in 4801 // milliseconds since the epoch. If not present, the model will persist 4802 // indefinitely. Expired models will be deleted and their storage 4803 // reclaimed. The defaultTableExpirationMs property of the encapsulating 4804 // dataset can be used to set a default expirationTime on newly created 4805 // models. 4806 ExpirationTime int64 `json:"expirationTime,omitempty,string"` 4807 4808 // FeatureColumns: Output only. Input feature columns that were used to 4809 // train this model. 4810 FeatureColumns []*StandardSqlField `json:"featureColumns,omitempty"` 4811 4812 // FriendlyName: Optional. A descriptive name for this model. 4813 FriendlyName string `json:"friendlyName,omitempty"` 4814 4815 // LabelColumns: Output only. Label columns that were used to train this 4816 // model. The output of the model will have a "predicted_" prefix to 4817 // these columns. 4818 LabelColumns []*StandardSqlField `json:"labelColumns,omitempty"` 4819 4820 // Labels: The labels associated with this model. You can use these to 4821 // organize and group your models. Label keys and values can be no 4822 // longer than 63 characters, can only contain lowercase letters, 4823 // numeric characters, underscores and dashes. International characters 4824 // are allowed. Label values are optional. Label keys must start with a 4825 // letter and each label in the list must have a different key. 4826 Labels map[string]string `json:"labels,omitempty"` 4827 4828 // LastModifiedTime: Output only. The time when this model was last 4829 // modified, in millisecs since the epoch. 4830 LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"` 4831 4832 // Location: Output only. The geographic location where the model 4833 // resides. This value is inherited from the dataset. 4834 Location string `json:"location,omitempty"` 4835 4836 // ModelReference: Required. Unique identifier for this model. 4837 ModelReference *ModelReference `json:"modelReference,omitempty"` 4838 4839 // ModelType: Output only. Type of the model resource. 4840 // 4841 // Possible values: 4842 // "MODEL_TYPE_UNSPECIFIED" 4843 // "LINEAR_REGRESSION" - Linear regression model. 4844 // "LOGISTIC_REGRESSION" - Logistic regression based classification 4845 // model. 4846 // "KMEANS" - K-means clustering model. 4847 // "MATRIX_FACTORIZATION" - Matrix factorization model. 4848 // "DNN_CLASSIFIER" - DNN classifier model. 4849 // "TENSORFLOW" - An imported TensorFlow model. 4850 // "DNN_REGRESSOR" - DNN regressor model. 4851 // "BOOSTED_TREE_REGRESSOR" - Boosted tree regressor model. 4852 // "BOOSTED_TREE_CLASSIFIER" - Boosted tree classifier model. 4853 // "ARIMA" - ARIMA model. 4854 // "AUTOML_REGRESSOR" - [Beta] AutoML Tables regression model. 4855 // "AUTOML_CLASSIFIER" - [Beta] AutoML Tables classification model. 4856 // "ARIMA_PLUS" - New name for the ARIMA model. 4857 ModelType string `json:"modelType,omitempty"` 4858 4859 // TrainingRuns: Output only. Information for all training runs in 4860 // increasing order of start_time. 4861 TrainingRuns []*TrainingRun `json:"trainingRuns,omitempty"` 4862 4863 // ServerResponse contains the HTTP response code and headers from the 4864 // server. 4865 googleapi.ServerResponse `json:"-"` 4866 4867 // ForceSendFields is a list of field names (e.g. "BestTrialId") to 4868 // unconditionally include in API requests. By default, fields with 4869 // empty values are omitted from API requests. However, any non-pointer, 4870 // non-interface field appearing in ForceSendFields will be sent to the 4871 // server regardless of whether the field is empty or not. This may be 4872 // used to include empty fields in Patch requests. 4873 ForceSendFields []string `json:"-"` 4874 4875 // NullFields is a list of field names (e.g. "BestTrialId") to include 4876 // in API requests with the JSON null value. By default, fields with 4877 // empty values are omitted from API requests. However, any field with 4878 // an empty value appearing in NullFields will be sent to the server as 4879 // null. It is an error if a field in this list has a non-empty value. 4880 // This may be used to include null fields in Patch requests. 4881 NullFields []string `json:"-"` 4882} 4883 4884func (s *Model) MarshalJSON() ([]byte, error) { 4885 type NoMethod Model 4886 raw := NoMethod(*s) 4887 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4888} 4889 4890type ModelDefinition struct { 4891 // ModelOptions: [Output-only, Beta] Model options used for the first 4892 // training run. These options are immutable for subsequent training 4893 // runs. Default values are used for any options not specified in the 4894 // input query. 4895 ModelOptions *ModelDefinitionModelOptions `json:"modelOptions,omitempty"` 4896 4897 // TrainingRuns: [Output-only, Beta] Information about ml training runs, 4898 // each training run comprises of multiple iterations and there may be 4899 // multiple training runs for the model if warm start is used or if a 4900 // user decides to continue a previously cancelled query. 4901 TrainingRuns []*BqmlTrainingRun `json:"trainingRuns,omitempty"` 4902 4903 // ForceSendFields is a list of field names (e.g. "ModelOptions") to 4904 // unconditionally include in API requests. By default, fields with 4905 // empty values are omitted from API requests. However, any non-pointer, 4906 // non-interface field appearing in ForceSendFields will be sent to the 4907 // server regardless of whether the field is empty or not. This may be 4908 // used to include empty fields in Patch requests. 4909 ForceSendFields []string `json:"-"` 4910 4911 // NullFields is a list of field names (e.g. "ModelOptions") to include 4912 // in API requests with the JSON null value. By default, fields with 4913 // empty values are omitted from API requests. However, any field with 4914 // an empty value appearing in NullFields will be sent to the server as 4915 // null. It is an error if a field in this list has a non-empty value. 4916 // This may be used to include null fields in Patch requests. 4917 NullFields []string `json:"-"` 4918} 4919 4920func (s *ModelDefinition) MarshalJSON() ([]byte, error) { 4921 type NoMethod ModelDefinition 4922 raw := NoMethod(*s) 4923 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4924} 4925 4926// ModelDefinitionModelOptions: [Output-only, Beta] Model options used 4927// for the first training run. These options are immutable for 4928// subsequent training runs. Default values are used for any options not 4929// specified in the input query. 4930type ModelDefinitionModelOptions struct { 4931 Labels []string `json:"labels,omitempty"` 4932 4933 LossType string `json:"lossType,omitempty"` 4934 4935 ModelType string `json:"modelType,omitempty"` 4936 4937 // ForceSendFields is a list of field names (e.g. "Labels") to 4938 // unconditionally include in API requests. By default, fields with 4939 // empty values are omitted from API requests. However, any non-pointer, 4940 // non-interface field appearing in ForceSendFields will be sent to the 4941 // server regardless of whether the field is empty or not. This may be 4942 // used to include empty fields in Patch requests. 4943 ForceSendFields []string `json:"-"` 4944 4945 // NullFields is a list of field names (e.g. "Labels") to include in API 4946 // requests with the JSON null value. By default, fields with empty 4947 // values are omitted from API requests. However, any field with an 4948 // empty value appearing in NullFields will be sent to the server as 4949 // null. It is an error if a field in this list has a non-empty value. 4950 // This may be used to include null fields in Patch requests. 4951 NullFields []string `json:"-"` 4952} 4953 4954func (s *ModelDefinitionModelOptions) MarshalJSON() ([]byte, error) { 4955 type NoMethod ModelDefinitionModelOptions 4956 raw := NoMethod(*s) 4957 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4958} 4959 4960type ModelReference struct { 4961 // DatasetId: [Required] The ID of the dataset containing this model. 4962 DatasetId string `json:"datasetId,omitempty"` 4963 4964 // ModelId: [Required] The ID of the model. The ID must contain only 4965 // letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum 4966 // length is 1,024 characters. 4967 ModelId string `json:"modelId,omitempty"` 4968 4969 // ProjectId: [Required] The ID of the project containing this model. 4970 ProjectId string `json:"projectId,omitempty"` 4971 4972 // ForceSendFields is a list of field names (e.g. "DatasetId") to 4973 // unconditionally include in API requests. By default, fields with 4974 // empty values are omitted from API requests. However, any non-pointer, 4975 // non-interface field appearing in ForceSendFields will be sent to the 4976 // server regardless of whether the field is empty or not. This may be 4977 // used to include empty fields in Patch requests. 4978 ForceSendFields []string `json:"-"` 4979 4980 // NullFields is a list of field names (e.g. "DatasetId") to include in 4981 // API requests with the JSON null value. By default, fields with empty 4982 // values are omitted from API requests. However, any field with an 4983 // empty value appearing in NullFields will be sent to the server as 4984 // null. It is an error if a field in this list has a non-empty value. 4985 // This may be used to include null fields in Patch requests. 4986 NullFields []string `json:"-"` 4987} 4988 4989func (s *ModelReference) MarshalJSON() ([]byte, error) { 4990 type NoMethod ModelReference 4991 raw := NoMethod(*s) 4992 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4993} 4994 4995// MultiClassClassificationMetrics: Evaluation metrics for multi-class 4996// classification/classifier models. 4997type MultiClassClassificationMetrics struct { 4998 // AggregateClassificationMetrics: Aggregate classification metrics. 4999 AggregateClassificationMetrics *AggregateClassificationMetrics `json:"aggregateClassificationMetrics,omitempty"` 5000 5001 // ConfusionMatrixList: Confusion matrix at different thresholds. 5002 ConfusionMatrixList []*ConfusionMatrix `json:"confusionMatrixList,omitempty"` 5003 5004 // ForceSendFields is a list of field names (e.g. 5005 // "AggregateClassificationMetrics") to unconditionally include in API 5006 // requests. By default, fields with empty values are omitted from API 5007 // requests. However, any non-pointer, non-interface field appearing in 5008 // ForceSendFields will be sent to the server regardless of whether the 5009 // field is empty or not. This may be used to include empty fields in 5010 // Patch requests. 5011 ForceSendFields []string `json:"-"` 5012 5013 // NullFields is a list of field names (e.g. 5014 // "AggregateClassificationMetrics") to include in API requests with the 5015 // JSON null value. By default, fields with empty values are omitted 5016 // from API requests. However, any field with an empty value appearing 5017 // in NullFields will be sent to the server as null. It is an error if a 5018 // field in this list has a non-empty value. This may be used to include 5019 // null fields in Patch requests. 5020 NullFields []string `json:"-"` 5021} 5022 5023func (s *MultiClassClassificationMetrics) MarshalJSON() ([]byte, error) { 5024 type NoMethod MultiClassClassificationMetrics 5025 raw := NoMethod(*s) 5026 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5027} 5028 5029type ParquetOptions struct { 5030 // EnableListInference: [Optional] Indicates whether to use schema 5031 // inference specifically for Parquet LIST logical type. 5032 EnableListInference bool `json:"enableListInference,omitempty"` 5033 5034 // EnumAsString: [Optional] Indicates whether to infer Parquet ENUM 5035 // logical type as STRING instead of BYTES by default. 5036 EnumAsString bool `json:"enumAsString,omitempty"` 5037 5038 // ForceSendFields is a list of field names (e.g. "EnableListInference") 5039 // to unconditionally include in API requests. By default, fields with 5040 // empty values are omitted from API requests. However, any non-pointer, 5041 // non-interface field appearing in ForceSendFields will be sent to the 5042 // server regardless of whether the field is empty or not. This may be 5043 // used to include empty fields in Patch requests. 5044 ForceSendFields []string `json:"-"` 5045 5046 // NullFields is a list of field names (e.g. "EnableListInference") to 5047 // include in API requests with the JSON null value. By default, fields 5048 // with empty values are omitted from API requests. However, any field 5049 // with an empty value appearing in NullFields will be sent to the 5050 // server as null. It is an error if a field in this list has a 5051 // non-empty value. This may be used to include null fields in Patch 5052 // requests. 5053 NullFields []string `json:"-"` 5054} 5055 5056func (s *ParquetOptions) MarshalJSON() ([]byte, error) { 5057 type NoMethod ParquetOptions 5058 raw := NoMethod(*s) 5059 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5060} 5061 5062// Policy: An Identity and Access Management (IAM) policy, which 5063// specifies access controls for Google Cloud resources. A `Policy` is a 5064// collection of `bindings`. A `binding` binds one or more `members` to 5065// a single `role`. Members can be user accounts, service accounts, 5066// Google groups, and domains (such as G Suite). A `role` is a named 5067// list of permissions; each `role` can be an IAM predefined role or a 5068// user-created custom role. For some types of Google Cloud resources, a 5069// `binding` can also specify a `condition`, which is a logical 5070// expression that allows access to a resource only if the expression 5071// evaluates to `true`. A condition can add constraints based on 5072// attributes of the request, the resource, or both. To learn which 5073// resources support conditions in their IAM policies, see the IAM 5074// documentation 5075// (https://cloud.google.com/iam/help/conditions/resource-policies). 5076// **JSON example:** { "bindings": [ { "role": 5077// "roles/resourcemanager.organizationAdmin", "members": [ 5078// "user:mike@example.com", "group:admins@example.com", 5079// "domain:google.com", 5080// "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { 5081// "role": "roles/resourcemanager.organizationViewer", "members": [ 5082// "user:eve@example.com" ], "condition": { "title": "expirable access", 5083// "description": "Does not grant access after Sep 2020", "expression": 5084// "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], 5085// "etag": "BwWWja0YfJA=", "version": 3 } **YAML example:** bindings: - 5086// members: - user:mike@example.com - group:admins@example.com - 5087// domain:google.com - 5088// serviceAccount:my-project-id@appspot.gserviceaccount.com role: 5089// roles/resourcemanager.organizationAdmin - members: - 5090// user:eve@example.com role: roles/resourcemanager.organizationViewer 5091// condition: title: expirable access description: Does not grant access 5092// after Sep 2020 expression: request.time < 5093// timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 5094// 3 For a description of IAM and its features, see the IAM 5095// documentation (https://cloud.google.com/iam/docs/). 5096type Policy struct { 5097 // AuditConfigs: Specifies cloud audit logging configuration for this 5098 // policy. 5099 AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` 5100 5101 // Bindings: Associates a list of `members` to a `role`. Optionally, may 5102 // specify a `condition` that determines how and when the `bindings` are 5103 // applied. Each of the `bindings` must contain at least one member. 5104 Bindings []*Binding `json:"bindings,omitempty"` 5105 5106 // Etag: `etag` is used for optimistic concurrency control as a way to 5107 // help prevent simultaneous updates of a policy from overwriting each 5108 // other. It is strongly suggested that systems make use of the `etag` 5109 // in the read-modify-write cycle to perform policy updates in order to 5110 // avoid race conditions: An `etag` is returned in the response to 5111 // `getIamPolicy`, and systems are expected to put that etag in the 5112 // request to `setIamPolicy` to ensure that their change will be applied 5113 // to the same version of the policy. **Important:** If you use IAM 5114 // Conditions, you must include the `etag` field whenever you call 5115 // `setIamPolicy`. If you omit this field, then IAM allows you to 5116 // overwrite a version `3` policy with a version `1` policy, and all of 5117 // the conditions in the version `3` policy are lost. 5118 Etag string `json:"etag,omitempty"` 5119 5120 // Version: Specifies the format of the policy. Valid values are `0`, 5121 // `1`, and `3`. Requests that specify an invalid value are rejected. 5122 // Any operation that affects conditional role bindings must specify 5123 // version `3`. This requirement applies to the following operations: * 5124 // Getting a policy that includes a conditional role binding * Adding a 5125 // conditional role binding to a policy * Changing a conditional role 5126 // binding in a policy * Removing any role binding, with or without a 5127 // condition, from a policy that includes conditions **Important:** If 5128 // you use IAM Conditions, you must include the `etag` field whenever 5129 // you call `setIamPolicy`. If you omit this field, then IAM allows you 5130 // to overwrite a version `3` policy with a version `1` policy, and all 5131 // of the conditions in the version `3` policy are lost. If a policy 5132 // does not include any conditions, operations on that policy may 5133 // specify any valid version or leave the field unset. To learn which 5134 // resources support conditions in their IAM policies, see the IAM 5135 // documentation 5136 // (https://cloud.google.com/iam/help/conditions/resource-policies). 5137 Version int64 `json:"version,omitempty"` 5138 5139 // ServerResponse contains the HTTP response code and headers from the 5140 // server. 5141 googleapi.ServerResponse `json:"-"` 5142 5143 // ForceSendFields is a list of field names (e.g. "AuditConfigs") to 5144 // unconditionally include in API requests. By default, fields with 5145 // empty values are omitted from API requests. However, any non-pointer, 5146 // non-interface field appearing in ForceSendFields will be sent to the 5147 // server regardless of whether the field is empty or not. This may be 5148 // used to include empty fields in Patch requests. 5149 ForceSendFields []string `json:"-"` 5150 5151 // NullFields is a list of field names (e.g. "AuditConfigs") to include 5152 // in API requests with the JSON null value. By default, fields with 5153 // empty values are omitted from API requests. However, any field with 5154 // an empty value appearing in NullFields will be sent to the server as 5155 // null. It is an error if a field in this list has a non-empty value. 5156 // This may be used to include null fields in Patch requests. 5157 NullFields []string `json:"-"` 5158} 5159 5160func (s *Policy) MarshalJSON() ([]byte, error) { 5161 type NoMethod Policy 5162 raw := NoMethod(*s) 5163 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5164} 5165 5166type ProjectList struct { 5167 // Etag: A hash of the page of results 5168 Etag string `json:"etag,omitempty"` 5169 5170 // Kind: The type of list. 5171 Kind string `json:"kind,omitempty"` 5172 5173 // NextPageToken: A token to request the next page of results. 5174 NextPageToken string `json:"nextPageToken,omitempty"` 5175 5176 // Projects: Projects to which you have at least READ access. 5177 Projects []*ProjectListProjects `json:"projects,omitempty"` 5178 5179 // TotalItems: The total number of projects in the list. 5180 TotalItems int64 `json:"totalItems,omitempty"` 5181 5182 // ServerResponse contains the HTTP response code and headers from the 5183 // server. 5184 googleapi.ServerResponse `json:"-"` 5185 5186 // ForceSendFields is a list of field names (e.g. "Etag") to 5187 // unconditionally include in API requests. By default, fields with 5188 // empty values are omitted from API requests. However, any non-pointer, 5189 // non-interface field appearing in ForceSendFields will be sent to the 5190 // server regardless of whether the field is empty or not. This may be 5191 // used to include empty fields in Patch requests. 5192 ForceSendFields []string `json:"-"` 5193 5194 // NullFields is a list of field names (e.g. "Etag") to include in API 5195 // requests with the JSON null value. By default, fields with empty 5196 // values are omitted from API requests. However, any field with an 5197 // empty value appearing in NullFields will be sent to the server as 5198 // null. It is an error if a field in this list has a non-empty value. 5199 // This may be used to include null fields in Patch requests. 5200 NullFields []string `json:"-"` 5201} 5202 5203func (s *ProjectList) MarshalJSON() ([]byte, error) { 5204 type NoMethod ProjectList 5205 raw := NoMethod(*s) 5206 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5207} 5208 5209type ProjectListProjects struct { 5210 // FriendlyName: A descriptive name for this project. 5211 FriendlyName string `json:"friendlyName,omitempty"` 5212 5213 // Id: An opaque ID of this project. 5214 Id string `json:"id,omitempty"` 5215 5216 // Kind: The resource type. 5217 Kind string `json:"kind,omitempty"` 5218 5219 // NumericId: The numeric ID of this project. 5220 NumericId uint64 `json:"numericId,omitempty,string"` 5221 5222 // ProjectReference: A unique reference to this project. 5223 ProjectReference *ProjectReference `json:"projectReference,omitempty"` 5224 5225 // ForceSendFields is a list of field names (e.g. "FriendlyName") to 5226 // unconditionally include in API requests. By default, fields with 5227 // empty values are omitted from API requests. However, any non-pointer, 5228 // non-interface field appearing in ForceSendFields will be sent to the 5229 // server regardless of whether the field is empty or not. This may be 5230 // used to include empty fields in Patch requests. 5231 ForceSendFields []string `json:"-"` 5232 5233 // NullFields is a list of field names (e.g. "FriendlyName") to include 5234 // in API requests with the JSON null value. By default, fields with 5235 // empty values are omitted from API requests. However, any field with 5236 // an empty value appearing in NullFields will be sent to the server as 5237 // null. It is an error if a field in this list has a non-empty value. 5238 // This may be used to include null fields in Patch requests. 5239 NullFields []string `json:"-"` 5240} 5241 5242func (s *ProjectListProjects) MarshalJSON() ([]byte, error) { 5243 type NoMethod ProjectListProjects 5244 raw := NoMethod(*s) 5245 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5246} 5247 5248type ProjectReference struct { 5249 // ProjectId: [Required] ID of the project. Can be either the numeric ID 5250 // or the assigned ID of the project. 5251 ProjectId string `json:"projectId,omitempty"` 5252 5253 // ForceSendFields is a list of field names (e.g. "ProjectId") to 5254 // unconditionally include in API requests. By default, fields with 5255 // empty values are omitted from API requests. However, any non-pointer, 5256 // non-interface field appearing in ForceSendFields will be sent to the 5257 // server regardless of whether the field is empty or not. This may be 5258 // used to include empty fields in Patch requests. 5259 ForceSendFields []string `json:"-"` 5260 5261 // NullFields is a list of field names (e.g. "ProjectId") to include in 5262 // API requests with the JSON null value. By default, fields with empty 5263 // values are omitted from API requests. However, any field with an 5264 // empty value appearing in NullFields will be sent to the server as 5265 // null. It is an error if a field in this list has a non-empty value. 5266 // This may be used to include null fields in Patch requests. 5267 NullFields []string `json:"-"` 5268} 5269 5270func (s *ProjectReference) MarshalJSON() ([]byte, error) { 5271 type NoMethod ProjectReference 5272 raw := NoMethod(*s) 5273 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5274} 5275 5276type QueryParameter struct { 5277 // Name: [Optional] If unset, this is a positional parameter. Otherwise, 5278 // should be unique within a query. 5279 Name string `json:"name,omitempty"` 5280 5281 // ParameterType: [Required] The type of this parameter. 5282 ParameterType *QueryParameterType `json:"parameterType,omitempty"` 5283 5284 // ParameterValue: [Required] The value of this parameter. 5285 ParameterValue *QueryParameterValue `json:"parameterValue,omitempty"` 5286 5287 // ForceSendFields is a list of field names (e.g. "Name") to 5288 // unconditionally include in API requests. By default, fields with 5289 // empty values are omitted from API requests. However, any non-pointer, 5290 // non-interface field appearing in ForceSendFields will be sent to the 5291 // server regardless of whether the field is empty or not. This may be 5292 // used to include empty fields in Patch requests. 5293 ForceSendFields []string `json:"-"` 5294 5295 // NullFields is a list of field names (e.g. "Name") to include in API 5296 // requests with the JSON null value. By default, fields with empty 5297 // values are omitted from API requests. However, any field with an 5298 // empty value appearing in NullFields will be sent to the server as 5299 // null. It is an error if a field in this list has a non-empty value. 5300 // This may be used to include null fields in Patch requests. 5301 NullFields []string `json:"-"` 5302} 5303 5304func (s *QueryParameter) MarshalJSON() ([]byte, error) { 5305 type NoMethod QueryParameter 5306 raw := NoMethod(*s) 5307 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5308} 5309 5310type QueryParameterType struct { 5311 // ArrayType: [Optional] The type of the array's elements, if this is an 5312 // array. 5313 ArrayType *QueryParameterType `json:"arrayType,omitempty"` 5314 5315 // StructTypes: [Optional] The types of the fields of this struct, in 5316 // order, if this is a struct. 5317 StructTypes []*QueryParameterTypeStructTypes `json:"structTypes,omitempty"` 5318 5319 // Type: [Required] The top level type of this field. 5320 Type string `json:"type,omitempty"` 5321 5322 // ForceSendFields is a list of field names (e.g. "ArrayType") to 5323 // unconditionally include in API requests. By default, fields with 5324 // empty values are omitted from API requests. However, any non-pointer, 5325 // non-interface field appearing in ForceSendFields will be sent to the 5326 // server regardless of whether the field is empty or not. This may be 5327 // used to include empty fields in Patch requests. 5328 ForceSendFields []string `json:"-"` 5329 5330 // NullFields is a list of field names (e.g. "ArrayType") to include in 5331 // API requests with the JSON null value. By default, fields with empty 5332 // values are omitted from API requests. However, any field with an 5333 // empty value appearing in NullFields will be sent to the server as 5334 // null. It is an error if a field in this list has a non-empty value. 5335 // This may be used to include null fields in Patch requests. 5336 NullFields []string `json:"-"` 5337} 5338 5339func (s *QueryParameterType) MarshalJSON() ([]byte, error) { 5340 type NoMethod QueryParameterType 5341 raw := NoMethod(*s) 5342 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5343} 5344 5345type QueryParameterTypeStructTypes struct { 5346 // Description: [Optional] Human-oriented description of the field. 5347 Description string `json:"description,omitempty"` 5348 5349 // Name: [Optional] The name of this field. 5350 Name string `json:"name,omitempty"` 5351 5352 // Type: [Required] The type of this field. 5353 Type *QueryParameterType `json:"type,omitempty"` 5354 5355 // ForceSendFields is a list of field names (e.g. "Description") to 5356 // unconditionally include in API requests. By default, fields with 5357 // empty values are omitted from API requests. However, any non-pointer, 5358 // non-interface field appearing in ForceSendFields will be sent to the 5359 // server regardless of whether the field is empty or not. This may be 5360 // used to include empty fields in Patch requests. 5361 ForceSendFields []string `json:"-"` 5362 5363 // NullFields is a list of field names (e.g. "Description") to include 5364 // in API requests with the JSON null value. By default, fields with 5365 // empty values are omitted from API requests. However, any field with 5366 // an empty value appearing in NullFields will be sent to the server as 5367 // null. It is an error if a field in this list has a non-empty value. 5368 // This may be used to include null fields in Patch requests. 5369 NullFields []string `json:"-"` 5370} 5371 5372func (s *QueryParameterTypeStructTypes) MarshalJSON() ([]byte, error) { 5373 type NoMethod QueryParameterTypeStructTypes 5374 raw := NoMethod(*s) 5375 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5376} 5377 5378type QueryParameterValue struct { 5379 // ArrayValues: [Optional] The array values, if this is an array type. 5380 ArrayValues []*QueryParameterValue `json:"arrayValues,omitempty"` 5381 5382 // StructValues: [Optional] The struct field values, in order of the 5383 // struct type's declaration. 5384 StructValues map[string]QueryParameterValue `json:"structValues,omitempty"` 5385 5386 // Value: [Optional] The value of this value, if a simple scalar type. 5387 Value string `json:"value,omitempty"` 5388 5389 // ForceSendFields is a list of field names (e.g. "ArrayValues") to 5390 // unconditionally include in API requests. By default, fields with 5391 // empty values are omitted from API requests. However, any non-pointer, 5392 // non-interface field appearing in ForceSendFields will be sent to the 5393 // server regardless of whether the field is empty or not. This may be 5394 // used to include empty fields in Patch requests. 5395 ForceSendFields []string `json:"-"` 5396 5397 // NullFields is a list of field names (e.g. "ArrayValues") to include 5398 // in API requests with the JSON null value. By default, fields with 5399 // empty values are omitted from API requests. However, any field with 5400 // an empty value appearing in NullFields will be sent to the server as 5401 // null. It is an error if a field in this list has a non-empty value. 5402 // This may be used to include null fields in Patch requests. 5403 NullFields []string `json:"-"` 5404} 5405 5406func (s *QueryParameterValue) MarshalJSON() ([]byte, error) { 5407 type NoMethod QueryParameterValue 5408 raw := NoMethod(*s) 5409 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5410} 5411 5412type QueryRequest struct { 5413 // ConnectionProperties: Connection properties. 5414 ConnectionProperties []*ConnectionProperty `json:"connectionProperties,omitempty"` 5415 5416 // CreateSession: If true, creates a new session, where session id will 5417 // be a server generated random id. If false, runs query with an 5418 // existing session_id passed in ConnectionProperty, otherwise runs 5419 // query in non-session mode. 5420 CreateSession bool `json:"createSession,omitempty"` 5421 5422 // DefaultDataset: [Optional] Specifies the default datasetId and 5423 // projectId to assume for any unqualified table names in the query. If 5424 // not set, all table names in the query string must be qualified in the 5425 // format 'datasetId.tableId'. 5426 DefaultDataset *DatasetReference `json:"defaultDataset,omitempty"` 5427 5428 // DryRun: [Optional] If set to true, BigQuery doesn't run the job. 5429 // Instead, if the query is valid, BigQuery returns statistics about the 5430 // job such as how many bytes would be processed. If the query is 5431 // invalid, an error returns. The default value is false. 5432 DryRun bool `json:"dryRun,omitempty"` 5433 5434 // Kind: The resource type of the request. 5435 Kind string `json:"kind,omitempty"` 5436 5437 // Labels: The labels associated with this job. You can use these to 5438 // organize and group your jobs. Label keys and values can be no longer 5439 // than 63 characters, can only contain lowercase letters, numeric 5440 // characters, underscores and dashes. International characters are 5441 // allowed. Label values are optional. Label keys must start with a 5442 // letter and each label in the list must have a different key. 5443 Labels map[string]string `json:"labels,omitempty"` 5444 5445 // Location: The geographic location where the job should run. See 5446 // details at 5447 // https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 5448 Location string `json:"location,omitempty"` 5449 5450 // MaxResults: [Optional] The maximum number of rows of data to return 5451 // per page of results. Setting this flag to a small value such as 1000 5452 // and then paging through results might improve reliability when the 5453 // query result set is large. In addition to this limit, responses are 5454 // also limited to 10 MB. By default, there is no maximum row count, and 5455 // only the byte limit applies. 5456 MaxResults int64 `json:"maxResults,omitempty"` 5457 5458 // MaximumBytesBilled: [Optional] Limits the bytes billed for this job. 5459 // Queries that will have bytes billed beyond this limit will fail 5460 // (without incurring a charge). If unspecified, this will be set to 5461 // your project default. 5462 MaximumBytesBilled int64 `json:"maximumBytesBilled,omitempty,string"` 5463 5464 // ParameterMode: Standard SQL only. Set to POSITIONAL to use positional 5465 // (?) query parameters or to NAMED to use named (@myparam) query 5466 // parameters in this query. 5467 ParameterMode string `json:"parameterMode,omitempty"` 5468 5469 // PreserveNulls: [Deprecated] This property is deprecated. 5470 PreserveNulls bool `json:"preserveNulls,omitempty"` 5471 5472 // Query: [Required] A query string, following the BigQuery query 5473 // syntax, of the query to execute. Example: "SELECT count(f1) FROM 5474 // [myProjectId:myDatasetId.myTableId]". 5475 Query string `json:"query,omitempty"` 5476 5477 // QueryParameters: Query parameters for Standard SQL queries. 5478 QueryParameters []*QueryParameter `json:"queryParameters,omitempty"` 5479 5480 // RequestId: A unique user provided identifier to ensure idempotent 5481 // behavior for queries. Note that this is different from the job_id. It 5482 // has the following properties: 1. It is case-sensitive, limited to up 5483 // to 36 ASCII characters. A UUID is recommended. 2. Read only queries 5484 // can ignore this token since they are nullipotent by definition. 3. 5485 // For the purposes of idempotency ensured by the request_id, a request 5486 // is considered duplicate of another only if they have the same 5487 // request_id and are actually duplicates. When determining whether a 5488 // request is a duplicate of the previous request, all parameters in the 5489 // request that may affect the behavior are considered. For example, 5490 // query, connection_properties, query_parameters, use_legacy_sql are 5491 // parameters that affect the result and are considered when determining 5492 // whether a request is a duplicate, but properties like timeout_ms 5493 // don't affect the result and are thus not considered. Dry run query 5494 // requests are never considered duplicate of another request. 4. When a 5495 // duplicate mutating query request is detected, it returns: a. the 5496 // results of the mutation if it completes successfully within the 5497 // timeout. b. the running operation if it is still in progress at the 5498 // end of the timeout. 5. Its lifetime is limited to 15 minutes. In 5499 // other words, if two requests are sent with the same request_id, but 5500 // more than 15 minutes apart, idempotency is not guaranteed. 5501 RequestId string `json:"requestId,omitempty"` 5502 5503 // TimeoutMs: [Optional] How long to wait for the query to complete, in 5504 // milliseconds, before the request times out and returns. Note that 5505 // this is only a timeout for the request, not the query. If the query 5506 // takes longer to run than the timeout value, the call returns without 5507 // any results and with the 'jobComplete' flag set to false. You can 5508 // call GetQueryResults() to wait for the query to complete and read the 5509 // results. The default value is 10000 milliseconds (10 seconds). 5510 TimeoutMs int64 `json:"timeoutMs,omitempty"` 5511 5512 // UseLegacySql: Specifies whether to use BigQuery's legacy SQL dialect 5513 // for this query. The default value is true. If set to false, the query 5514 // will use BigQuery's standard SQL: 5515 // https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is 5516 // set to false, the value of flattenResults is ignored; query will be 5517 // run as if flattenResults is false. 5518 // 5519 // Default: true 5520 UseLegacySql *bool `json:"useLegacySql,omitempty"` 5521 5522 // UseQueryCache: [Optional] Whether to look for the result in the query 5523 // cache. The query cache is a best-effort cache that will be flushed 5524 // whenever tables in the query are modified. The default value is true. 5525 // 5526 // Default: true 5527 UseQueryCache *bool `json:"useQueryCache,omitempty"` 5528 5529 // ForceSendFields is a list of field names (e.g. 5530 // "ConnectionProperties") to unconditionally include in API requests. 5531 // By default, fields with empty values are omitted from API requests. 5532 // However, any non-pointer, non-interface field appearing in 5533 // ForceSendFields will be sent to the server regardless of whether the 5534 // field is empty or not. This may be used to include empty fields in 5535 // Patch requests. 5536 ForceSendFields []string `json:"-"` 5537 5538 // NullFields is a list of field names (e.g. "ConnectionProperties") to 5539 // include in API requests with the JSON null value. By default, fields 5540 // with empty values are omitted from API requests. However, any field 5541 // with an empty value appearing in NullFields will be sent to the 5542 // server as null. It is an error if a field in this list has a 5543 // non-empty value. This may be used to include null fields in Patch 5544 // requests. 5545 NullFields []string `json:"-"` 5546} 5547 5548func (s *QueryRequest) MarshalJSON() ([]byte, error) { 5549 type NoMethod QueryRequest 5550 raw := NoMethod(*s) 5551 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5552} 5553 5554type QueryResponse struct { 5555 // CacheHit: Whether the query result was fetched from the query cache. 5556 CacheHit bool `json:"cacheHit,omitempty"` 5557 5558 // Errors: [Output-only] The first errors or warnings encountered during 5559 // the running of the job. The final message includes the number of 5560 // errors that caused the process to stop. Errors here do not 5561 // necessarily mean that the job has completed or was unsuccessful. 5562 Errors []*ErrorProto `json:"errors,omitempty"` 5563 5564 // JobComplete: Whether the query has completed or not. If rows or 5565 // totalRows are present, this will always be true. If this is false, 5566 // totalRows will not be available. 5567 JobComplete bool `json:"jobComplete,omitempty"` 5568 5569 // JobReference: Reference to the Job that was created to run the query. 5570 // This field will be present even if the original request timed out, in 5571 // which case GetQueryResults can be used to read the results once the 5572 // query has completed. Since this API only returns the first page of 5573 // results, subsequent pages can be fetched via the same mechanism 5574 // (GetQueryResults). 5575 JobReference *JobReference `json:"jobReference,omitempty"` 5576 5577 // Kind: The resource type. 5578 Kind string `json:"kind,omitempty"` 5579 5580 // NumDmlAffectedRows: [Output-only] The number of rows affected by a 5581 // DML statement. Present only for DML statements INSERT, UPDATE or 5582 // DELETE. 5583 NumDmlAffectedRows int64 `json:"numDmlAffectedRows,omitempty,string"` 5584 5585 // PageToken: A token used for paging results. 5586 PageToken string `json:"pageToken,omitempty"` 5587 5588 // Rows: An object with as many results as can be contained within the 5589 // maximum permitted reply size. To get any additional rows, you can 5590 // call GetQueryResults and specify the jobReference returned above. 5591 Rows []*TableRow `json:"rows,omitempty"` 5592 5593 // Schema: The schema of the results. Present only when the query 5594 // completes successfully. 5595 Schema *TableSchema `json:"schema,omitempty"` 5596 5597 // SessionInfoTemplate: [Output-only] [Preview] Information of the 5598 // session if this job is part of one. 5599 SessionInfoTemplate *SessionInfo `json:"sessionInfoTemplate,omitempty"` 5600 5601 // TotalBytesProcessed: The total number of bytes processed for this 5602 // query. If this query was a dry run, this is the number of bytes that 5603 // would be processed if the query were run. 5604 TotalBytesProcessed int64 `json:"totalBytesProcessed,omitempty,string"` 5605 5606 // TotalRows: The total number of rows in the complete query result set, 5607 // which can be more than the number of rows in this single page of 5608 // results. 5609 TotalRows uint64 `json:"totalRows,omitempty,string"` 5610 5611 // ServerResponse contains the HTTP response code and headers from the 5612 // server. 5613 googleapi.ServerResponse `json:"-"` 5614 5615 // ForceSendFields is a list of field names (e.g. "CacheHit") to 5616 // unconditionally include in API requests. By default, fields with 5617 // empty values are omitted from API requests. However, any non-pointer, 5618 // non-interface field appearing in ForceSendFields will be sent to the 5619 // server regardless of whether the field is empty or not. This may be 5620 // used to include empty fields in Patch requests. 5621 ForceSendFields []string `json:"-"` 5622 5623 // NullFields is a list of field names (e.g. "CacheHit") to include in 5624 // API requests with the JSON null value. By default, fields with empty 5625 // values are omitted from API requests. However, any field with an 5626 // empty value appearing in NullFields will be sent to the server as 5627 // null. It is an error if a field in this list has a non-empty value. 5628 // This may be used to include null fields in Patch requests. 5629 NullFields []string `json:"-"` 5630} 5631 5632func (s *QueryResponse) MarshalJSON() ([]byte, error) { 5633 type NoMethod QueryResponse 5634 raw := NoMethod(*s) 5635 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5636} 5637 5638type QueryTimelineSample struct { 5639 // ActiveUnits: Total number of units currently being processed by 5640 // workers. This does not correspond directly to slot usage. This is the 5641 // largest value observed since the last sample. 5642 ActiveUnits int64 `json:"activeUnits,omitempty,string"` 5643 5644 // CompletedUnits: Total parallel units of work completed by this query. 5645 CompletedUnits int64 `json:"completedUnits,omitempty,string"` 5646 5647 // ElapsedMs: Milliseconds elapsed since the start of query execution. 5648 ElapsedMs int64 `json:"elapsedMs,omitempty,string"` 5649 5650 // PendingUnits: Total parallel units of work remaining for the active 5651 // stages. 5652 PendingUnits int64 `json:"pendingUnits,omitempty,string"` 5653 5654 // TotalSlotMs: Cumulative slot-ms consumed by the query. 5655 TotalSlotMs int64 `json:"totalSlotMs,omitempty,string"` 5656 5657 // ForceSendFields is a list of field names (e.g. "ActiveUnits") to 5658 // unconditionally include in API requests. By default, fields with 5659 // empty values are omitted from API requests. However, any non-pointer, 5660 // non-interface field appearing in ForceSendFields will be sent to the 5661 // server regardless of whether the field is empty or not. This may be 5662 // used to include empty fields in Patch requests. 5663 ForceSendFields []string `json:"-"` 5664 5665 // NullFields is a list of field names (e.g. "ActiveUnits") to include 5666 // in API requests with the JSON null value. By default, fields with 5667 // empty values are omitted from API requests. However, any field with 5668 // an empty value appearing in NullFields will be sent to the server as 5669 // null. It is an error if a field in this list has a non-empty value. 5670 // This may be used to include null fields in Patch requests. 5671 NullFields []string `json:"-"` 5672} 5673 5674func (s *QueryTimelineSample) MarshalJSON() ([]byte, error) { 5675 type NoMethod QueryTimelineSample 5676 raw := NoMethod(*s) 5677 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5678} 5679 5680type RangePartitioning struct { 5681 // Field: [TrustedTester] [Required] The table is partitioned by this 5682 // field. The field must be a top-level NULLABLE/REQUIRED field. The 5683 // only supported type is INTEGER/INT64. 5684 Field string `json:"field,omitempty"` 5685 5686 // Range: [TrustedTester] [Required] Defines the ranges for range 5687 // partitioning. 5688 Range *RangePartitioningRange `json:"range,omitempty"` 5689 5690 // ForceSendFields is a list of field names (e.g. "Field") to 5691 // unconditionally include in API requests. By default, fields with 5692 // empty values are omitted from API requests. However, any non-pointer, 5693 // non-interface field appearing in ForceSendFields will be sent to the 5694 // server regardless of whether the field is empty or not. This may be 5695 // used to include empty fields in Patch requests. 5696 ForceSendFields []string `json:"-"` 5697 5698 // NullFields is a list of field names (e.g. "Field") to include in API 5699 // requests with the JSON null value. By default, fields with empty 5700 // values are omitted from API requests. However, any field with an 5701 // empty value appearing in NullFields will be sent to the server as 5702 // null. It is an error if a field in this list has a non-empty value. 5703 // This may be used to include null fields in Patch requests. 5704 NullFields []string `json:"-"` 5705} 5706 5707func (s *RangePartitioning) MarshalJSON() ([]byte, error) { 5708 type NoMethod RangePartitioning 5709 raw := NoMethod(*s) 5710 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5711} 5712 5713// RangePartitioningRange: [TrustedTester] [Required] Defines the ranges 5714// for range partitioning. 5715type RangePartitioningRange struct { 5716 // End: [TrustedTester] [Required] The end of range partitioning, 5717 // exclusive. 5718 End int64 `json:"end,omitempty,string"` 5719 5720 // Interval: [TrustedTester] [Required] The width of each interval. 5721 Interval int64 `json:"interval,omitempty,string"` 5722 5723 // Start: [TrustedTester] [Required] The start of range partitioning, 5724 // inclusive. 5725 Start int64 `json:"start,omitempty,string"` 5726 5727 // ForceSendFields is a list of field names (e.g. "End") to 5728 // unconditionally include in API requests. By default, fields with 5729 // empty values are omitted from API requests. However, any non-pointer, 5730 // non-interface field appearing in ForceSendFields will be sent to the 5731 // server regardless of whether the field is empty or not. This may be 5732 // used to include empty fields in Patch requests. 5733 ForceSendFields []string `json:"-"` 5734 5735 // NullFields is a list of field names (e.g. "End") to include in API 5736 // requests with the JSON null value. By default, fields with empty 5737 // values are omitted from API requests. However, any field with an 5738 // empty value appearing in NullFields will be sent to the server as 5739 // null. It is an error if a field in this list has a non-empty value. 5740 // This may be used to include null fields in Patch requests. 5741 NullFields []string `json:"-"` 5742} 5743 5744func (s *RangePartitioningRange) MarshalJSON() ([]byte, error) { 5745 type NoMethod RangePartitioningRange 5746 raw := NoMethod(*s) 5747 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5748} 5749 5750// RankingMetrics: Evaluation metrics used by weighted-ALS models 5751// specified by feedback_type=implicit. 5752type RankingMetrics struct { 5753 // AverageRank: Determines the goodness of a ranking by computing the 5754 // percentile rank from the predicted confidence and dividing it by the 5755 // original rank. 5756 AverageRank float64 `json:"averageRank,omitempty"` 5757 5758 // MeanAveragePrecision: Calculates a precision per user for all the 5759 // items by ranking them and then averages all the precisions across all 5760 // the users. 5761 MeanAveragePrecision float64 `json:"meanAveragePrecision,omitempty"` 5762 5763 // MeanSquaredError: Similar to the mean squared error computed in 5764 // regression and explicit recommendation models except instead of 5765 // computing the rating directly, the output from evaluate is computed 5766 // against a preference which is 1 or 0 depending on if the rating 5767 // exists or not. 5768 MeanSquaredError float64 `json:"meanSquaredError,omitempty"` 5769 5770 // NormalizedDiscountedCumulativeGain: A metric to determine the 5771 // goodness of a ranking calculated from the predicted confidence by 5772 // comparing it to an ideal rank measured by the original ratings. 5773 NormalizedDiscountedCumulativeGain float64 `json:"normalizedDiscountedCumulativeGain,omitempty"` 5774 5775 // ForceSendFields is a list of field names (e.g. "AverageRank") to 5776 // unconditionally include in API requests. By default, fields with 5777 // empty values are omitted from API requests. However, any non-pointer, 5778 // non-interface field appearing in ForceSendFields will be sent to the 5779 // server regardless of whether the field is empty or not. This may be 5780 // used to include empty fields in Patch requests. 5781 ForceSendFields []string `json:"-"` 5782 5783 // NullFields is a list of field names (e.g. "AverageRank") to include 5784 // in API requests with the JSON null value. By default, fields with 5785 // empty values are omitted from API requests. However, any field with 5786 // an empty value appearing in NullFields will be sent to the server as 5787 // null. It is an error if a field in this list has a non-empty value. 5788 // This may be used to include null fields in Patch requests. 5789 NullFields []string `json:"-"` 5790} 5791 5792func (s *RankingMetrics) MarshalJSON() ([]byte, error) { 5793 type NoMethod RankingMetrics 5794 raw := NoMethod(*s) 5795 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5796} 5797 5798func (s *RankingMetrics) UnmarshalJSON(data []byte) error { 5799 type NoMethod RankingMetrics 5800 var s1 struct { 5801 AverageRank gensupport.JSONFloat64 `json:"averageRank"` 5802 MeanAveragePrecision gensupport.JSONFloat64 `json:"meanAveragePrecision"` 5803 MeanSquaredError gensupport.JSONFloat64 `json:"meanSquaredError"` 5804 NormalizedDiscountedCumulativeGain gensupport.JSONFloat64 `json:"normalizedDiscountedCumulativeGain"` 5805 *NoMethod 5806 } 5807 s1.NoMethod = (*NoMethod)(s) 5808 if err := json.Unmarshal(data, &s1); err != nil { 5809 return err 5810 } 5811 s.AverageRank = float64(s1.AverageRank) 5812 s.MeanAveragePrecision = float64(s1.MeanAveragePrecision) 5813 s.MeanSquaredError = float64(s1.MeanSquaredError) 5814 s.NormalizedDiscountedCumulativeGain = float64(s1.NormalizedDiscountedCumulativeGain) 5815 return nil 5816} 5817 5818// RegressionMetrics: Evaluation metrics for regression and explicit 5819// feedback type matrix factorization models. 5820type RegressionMetrics struct { 5821 // MeanAbsoluteError: Mean absolute error. 5822 MeanAbsoluteError float64 `json:"meanAbsoluteError,omitempty"` 5823 5824 // MeanSquaredError: Mean squared error. 5825 MeanSquaredError float64 `json:"meanSquaredError,omitempty"` 5826 5827 // MeanSquaredLogError: Mean squared log error. 5828 MeanSquaredLogError float64 `json:"meanSquaredLogError,omitempty"` 5829 5830 // MedianAbsoluteError: Median absolute error. 5831 MedianAbsoluteError float64 `json:"medianAbsoluteError,omitempty"` 5832 5833 // RSquared: R^2 score. This corresponds to r2_score in ML.EVALUATE. 5834 RSquared float64 `json:"rSquared,omitempty"` 5835 5836 // ForceSendFields is a list of field names (e.g. "MeanAbsoluteError") 5837 // to unconditionally include in API requests. By default, fields with 5838 // empty values are omitted from API requests. However, any non-pointer, 5839 // non-interface field appearing in ForceSendFields will be sent to the 5840 // server regardless of whether the field is empty or not. This may be 5841 // used to include empty fields in Patch requests. 5842 ForceSendFields []string `json:"-"` 5843 5844 // NullFields is a list of field names (e.g. "MeanAbsoluteError") to 5845 // include in API requests with the JSON null value. By default, fields 5846 // with empty values are omitted from API requests. However, any field 5847 // with an empty value appearing in NullFields will be sent to the 5848 // server as null. It is an error if a field in this list has a 5849 // non-empty value. This may be used to include null fields in Patch 5850 // requests. 5851 NullFields []string `json:"-"` 5852} 5853 5854func (s *RegressionMetrics) MarshalJSON() ([]byte, error) { 5855 type NoMethod RegressionMetrics 5856 raw := NoMethod(*s) 5857 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5858} 5859 5860func (s *RegressionMetrics) UnmarshalJSON(data []byte) error { 5861 type NoMethod RegressionMetrics 5862 var s1 struct { 5863 MeanAbsoluteError gensupport.JSONFloat64 `json:"meanAbsoluteError"` 5864 MeanSquaredError gensupport.JSONFloat64 `json:"meanSquaredError"` 5865 MeanSquaredLogError gensupport.JSONFloat64 `json:"meanSquaredLogError"` 5866 MedianAbsoluteError gensupport.JSONFloat64 `json:"medianAbsoluteError"` 5867 RSquared gensupport.JSONFloat64 `json:"rSquared"` 5868 *NoMethod 5869 } 5870 s1.NoMethod = (*NoMethod)(s) 5871 if err := json.Unmarshal(data, &s1); err != nil { 5872 return err 5873 } 5874 s.MeanAbsoluteError = float64(s1.MeanAbsoluteError) 5875 s.MeanSquaredError = float64(s1.MeanSquaredError) 5876 s.MeanSquaredLogError = float64(s1.MeanSquaredLogError) 5877 s.MedianAbsoluteError = float64(s1.MedianAbsoluteError) 5878 s.RSquared = float64(s1.RSquared) 5879 return nil 5880} 5881 5882// Routine: A user-defined function or a stored procedure. 5883type Routine struct { 5884 // Arguments: Optional. 5885 Arguments []*Argument `json:"arguments,omitempty"` 5886 5887 // CreationTime: Output only. The time when this routine was created, in 5888 // milliseconds since the epoch. 5889 CreationTime int64 `json:"creationTime,omitempty,string"` 5890 5891 // DefinitionBody: Required. The body of the routine. For functions, 5892 // this is the expression in the AS clause. If language=SQL, it is the 5893 // substring inside (but excluding) the parentheses. For example, for 5894 // the function created with the following statement: `CREATE FUNCTION 5895 // JoinLines(x string, y string) as (concat(x, "\n", y))` The 5896 // definition_body is `concat(x, "\n", y)` (\n is not replaced with 5897 // linebreak). If language=JAVASCRIPT, it is the evaluated string in the 5898 // AS clause. For example, for the function created with the following 5899 // statement: `CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return 5900 // "\n";\n'` The definition_body is `return "\n";\n` Note that both \n 5901 // are replaced with linebreaks. 5902 DefinitionBody string `json:"definitionBody,omitempty"` 5903 5904 // Description: Optional. [Experimental] The description of the routine 5905 // if defined. 5906 Description string `json:"description,omitempty"` 5907 5908 // DeterminismLevel: Optional. [Experimental] The determinism level of 5909 // the JavaScript UDF if defined. 5910 // 5911 // Possible values: 5912 // "DETERMINISM_LEVEL_UNSPECIFIED" - The determinism of the UDF is 5913 // unspecified. 5914 // "DETERMINISTIC" - The UDF is deterministic, meaning that 2 function 5915 // calls with the same inputs always produce the same result, even 5916 // across 2 query runs. 5917 // "NOT_DETERMINISTIC" - The UDF is not deterministic. 5918 DeterminismLevel string `json:"determinismLevel,omitempty"` 5919 5920 // Etag: Output only. A hash of this resource. 5921 Etag string `json:"etag,omitempty"` 5922 5923 // ImportedLibraries: Optional. If language = "JAVASCRIPT", this field 5924 // stores the path of the imported JAVASCRIPT libraries. 5925 ImportedLibraries []string `json:"importedLibraries,omitempty"` 5926 5927 // Language: Optional. Defaults to "SQL". 5928 // 5929 // Possible values: 5930 // "LANGUAGE_UNSPECIFIED" 5931 // "SQL" - SQL language. 5932 // "JAVASCRIPT" - JavaScript language. 5933 Language string `json:"language,omitempty"` 5934 5935 // LastModifiedTime: Output only. The time when this routine was last 5936 // modified, in milliseconds since the epoch. 5937 LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"` 5938 5939 // ReturnTableType: Optional. Set only if Routine is a 5940 // "TABLE_VALUED_FUNCTION". 5941 ReturnTableType *StandardSqlTableType `json:"returnTableType,omitempty"` 5942 5943 // ReturnType: Optional if language = "SQL"; required otherwise. If 5944 // absent, the return type is inferred from definition_body at query 5945 // time in each query that references this routine. If present, then the 5946 // evaluated result will be cast to the specified returned type at query 5947 // time. For example, for the functions created with the following 5948 // statements: * `CREATE FUNCTION Add(x FLOAT64, y FLOAT64) RETURNS 5949 // FLOAT64 AS (x + y);` * `CREATE FUNCTION Increment(x FLOAT64) AS 5950 // (Add(x, 1));` * `CREATE FUNCTION Decrement(x FLOAT64) RETURNS FLOAT64 5951 // AS (Add(x, -1));` The return_type is `{type_kind: "FLOAT64"}` for 5952 // `Add` and `Decrement`, and is absent for `Increment` (inferred as 5953 // FLOAT64 at query time). Suppose the function `Add` is replaced by 5954 // `CREATE OR REPLACE FUNCTION Add(x INT64, y INT64) AS (x + y);` Then 5955 // the inferred return type of `Increment` is automatically changed to 5956 // INT64 at query time, while the return type of `Decrement` remains 5957 // FLOAT64. 5958 ReturnType *StandardSqlDataType `json:"returnType,omitempty"` 5959 5960 // RoutineReference: Required. Reference describing the ID of this 5961 // routine. 5962 RoutineReference *RoutineReference `json:"routineReference,omitempty"` 5963 5964 // RoutineType: Required. The type of routine. 5965 // 5966 // Possible values: 5967 // "ROUTINE_TYPE_UNSPECIFIED" 5968 // "SCALAR_FUNCTION" - Non-builtin permanent scalar function. 5969 // "PROCEDURE" - Stored procedure. 5970 // "TABLE_VALUED_FUNCTION" - Non-builtin permanent TVF. 5971 RoutineType string `json:"routineType,omitempty"` 5972 5973 // ServerResponse contains the HTTP response code and headers from the 5974 // server. 5975 googleapi.ServerResponse `json:"-"` 5976 5977 // ForceSendFields is a list of field names (e.g. "Arguments") to 5978 // unconditionally include in API requests. By default, fields with 5979 // empty values are omitted from API requests. However, any non-pointer, 5980 // non-interface field appearing in ForceSendFields will be sent to the 5981 // server regardless of whether the field is empty or not. This may be 5982 // used to include empty fields in Patch requests. 5983 ForceSendFields []string `json:"-"` 5984 5985 // NullFields is a list of field names (e.g. "Arguments") to include in 5986 // API requests with the JSON null value. By default, fields with empty 5987 // values are omitted from API requests. However, any field with an 5988 // empty value appearing in NullFields will be sent to the server as 5989 // null. It is an error if a field in this list has a non-empty value. 5990 // This may be used to include null fields in Patch requests. 5991 NullFields []string `json:"-"` 5992} 5993 5994func (s *Routine) MarshalJSON() ([]byte, error) { 5995 type NoMethod Routine 5996 raw := NoMethod(*s) 5997 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 5998} 5999 6000type RoutineReference struct { 6001 // DatasetId: [Required] The ID of the dataset containing this routine. 6002 DatasetId string `json:"datasetId,omitempty"` 6003 6004 // ProjectId: [Required] The ID of the project containing this routine. 6005 ProjectId string `json:"projectId,omitempty"` 6006 6007 // RoutineId: [Required] The ID of the routine. The ID must contain only 6008 // letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum 6009 // length is 256 characters. 6010 RoutineId string `json:"routineId,omitempty"` 6011 6012 // ForceSendFields is a list of field names (e.g. "DatasetId") to 6013 // unconditionally include in API requests. By default, fields with 6014 // empty values are omitted from API requests. However, any non-pointer, 6015 // non-interface field appearing in ForceSendFields will be sent to the 6016 // server regardless of whether the field is empty or not. This may be 6017 // used to include empty fields in Patch requests. 6018 ForceSendFields []string `json:"-"` 6019 6020 // NullFields is a list of field names (e.g. "DatasetId") to include in 6021 // API requests with the JSON null value. By default, fields with empty 6022 // values are omitted from API requests. However, any field with an 6023 // empty value appearing in NullFields will be sent to the server as 6024 // null. It is an error if a field in this list has a non-empty value. 6025 // This may be used to include null fields in Patch requests. 6026 NullFields []string `json:"-"` 6027} 6028 6029func (s *RoutineReference) MarshalJSON() ([]byte, error) { 6030 type NoMethod RoutineReference 6031 raw := NoMethod(*s) 6032 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6033} 6034 6035// Row: A single row in the confusion matrix. 6036type Row struct { 6037 // ActualLabel: The original label of this row. 6038 ActualLabel string `json:"actualLabel,omitempty"` 6039 6040 // Entries: Info describing predicted label distribution. 6041 Entries []*Entry `json:"entries,omitempty"` 6042 6043 // ForceSendFields is a list of field names (e.g. "ActualLabel") to 6044 // unconditionally include in API requests. By default, fields with 6045 // empty values are omitted from API requests. However, any non-pointer, 6046 // non-interface field appearing in ForceSendFields will be sent to the 6047 // server regardless of whether the field is empty or not. This may be 6048 // used to include empty fields in Patch requests. 6049 ForceSendFields []string `json:"-"` 6050 6051 // NullFields is a list of field names (e.g. "ActualLabel") to include 6052 // in API requests with the JSON null value. By default, fields with 6053 // empty values are omitted from API requests. However, any field with 6054 // an empty value appearing in NullFields will be sent to the server as 6055 // null. It is an error if a field in this list has a non-empty value. 6056 // This may be used to include null fields in Patch requests. 6057 NullFields []string `json:"-"` 6058} 6059 6060func (s *Row) MarshalJSON() ([]byte, error) { 6061 type NoMethod Row 6062 raw := NoMethod(*s) 6063 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6064} 6065 6066// RowAccessPolicy: Represents access on a subset of rows on the 6067// specified table, defined by its filter predicate. Access to the 6068// subset of rows is controlled by its IAM policy. 6069type RowAccessPolicy struct { 6070 // CreationTime: Output only. The time when this row access policy was 6071 // created, in milliseconds since the epoch. 6072 CreationTime string `json:"creationTime,omitempty"` 6073 6074 // Etag: Output only. A hash of this resource. 6075 Etag string `json:"etag,omitempty"` 6076 6077 // FilterPredicate: Required. A SQL boolean expression that represents 6078 // the rows defined by this row access policy, similar to the boolean 6079 // expression in a WHERE clause of a SELECT query on a table. References 6080 // to other tables, routines, and temporary functions are not supported. 6081 // Examples: region="EU" date_field = CAST('2019-9-27' as DATE) 6082 // nullable_field is not NULL numeric_field BETWEEN 1.0 AND 5.0 6083 FilterPredicate string `json:"filterPredicate,omitempty"` 6084 6085 // LastModifiedTime: Output only. The time when this row access policy 6086 // was last modified, in milliseconds since the epoch. 6087 LastModifiedTime string `json:"lastModifiedTime,omitempty"` 6088 6089 // RowAccessPolicyReference: Required. Reference describing the ID of 6090 // this row access policy. 6091 RowAccessPolicyReference *RowAccessPolicyReference `json:"rowAccessPolicyReference,omitempty"` 6092 6093 // ForceSendFields is a list of field names (e.g. "CreationTime") to 6094 // unconditionally include in API requests. By default, fields with 6095 // empty values are omitted from API requests. However, any non-pointer, 6096 // non-interface field appearing in ForceSendFields will be sent to the 6097 // server regardless of whether the field is empty or not. This may be 6098 // used to include empty fields in Patch requests. 6099 ForceSendFields []string `json:"-"` 6100 6101 // NullFields is a list of field names (e.g. "CreationTime") to include 6102 // in API requests with the JSON null value. By default, fields with 6103 // empty values are omitted from API requests. However, any field with 6104 // an empty value appearing in NullFields will be sent to the server as 6105 // null. It is an error if a field in this list has a non-empty value. 6106 // This may be used to include null fields in Patch requests. 6107 NullFields []string `json:"-"` 6108} 6109 6110func (s *RowAccessPolicy) MarshalJSON() ([]byte, error) { 6111 type NoMethod RowAccessPolicy 6112 raw := NoMethod(*s) 6113 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6114} 6115 6116type RowAccessPolicyReference struct { 6117 // DatasetId: [Required] The ID of the dataset containing this row 6118 // access policy. 6119 DatasetId string `json:"datasetId,omitempty"` 6120 6121 // PolicyId: [Required] The ID of the row access policy. The ID must 6122 // contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). 6123 // The maximum length is 256 characters. 6124 PolicyId string `json:"policyId,omitempty"` 6125 6126 // ProjectId: [Required] The ID of the project containing this row 6127 // access policy. 6128 ProjectId string `json:"projectId,omitempty"` 6129 6130 // TableId: [Required] The ID of the table containing this row access 6131 // policy. 6132 TableId string `json:"tableId,omitempty"` 6133 6134 // ForceSendFields is a list of field names (e.g. "DatasetId") to 6135 // unconditionally include in API requests. By default, fields with 6136 // empty values are omitted from API requests. However, any non-pointer, 6137 // non-interface field appearing in ForceSendFields will be sent to the 6138 // server regardless of whether the field is empty or not. This may be 6139 // used to include empty fields in Patch requests. 6140 ForceSendFields []string `json:"-"` 6141 6142 // NullFields is a list of field names (e.g. "DatasetId") to include in 6143 // API requests with the JSON null value. By default, fields with empty 6144 // values are omitted from API requests. However, any field with an 6145 // empty value appearing in NullFields will be sent to the server as 6146 // null. It is an error if a field in this list has a non-empty value. 6147 // This may be used to include null fields in Patch requests. 6148 NullFields []string `json:"-"` 6149} 6150 6151func (s *RowAccessPolicyReference) MarshalJSON() ([]byte, error) { 6152 type NoMethod RowAccessPolicyReference 6153 raw := NoMethod(*s) 6154 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6155} 6156 6157type RowLevelSecurityStatistics struct { 6158 // RowLevelSecurityApplied: [Output-only] [Preview] Whether any accessed 6159 // data was protected by row access policies. 6160 RowLevelSecurityApplied bool `json:"rowLevelSecurityApplied,omitempty"` 6161 6162 // ForceSendFields is a list of field names (e.g. 6163 // "RowLevelSecurityApplied") to unconditionally include in API 6164 // requests. By default, fields with empty values are omitted from API 6165 // requests. However, any non-pointer, non-interface field appearing in 6166 // ForceSendFields will be sent to the server regardless of whether the 6167 // field is empty or not. This may be used to include empty fields in 6168 // Patch requests. 6169 ForceSendFields []string `json:"-"` 6170 6171 // NullFields is a list of field names (e.g. "RowLevelSecurityApplied") 6172 // to include in API requests with the JSON null value. By default, 6173 // fields with empty values are omitted from API requests. However, any 6174 // field with an empty value appearing in NullFields will be sent to the 6175 // server as null. It is an error if a field in this list has a 6176 // non-empty value. This may be used to include null fields in Patch 6177 // requests. 6178 NullFields []string `json:"-"` 6179} 6180 6181func (s *RowLevelSecurityStatistics) MarshalJSON() ([]byte, error) { 6182 type NoMethod RowLevelSecurityStatistics 6183 raw := NoMethod(*s) 6184 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6185} 6186 6187type ScriptStackFrame struct { 6188 // EndColumn: [Output-only] One-based end column. 6189 EndColumn int64 `json:"endColumn,omitempty"` 6190 6191 // EndLine: [Output-only] One-based end line. 6192 EndLine int64 `json:"endLine,omitempty"` 6193 6194 // ProcedureId: [Output-only] Name of the active procedure, empty if in 6195 // a top-level script. 6196 ProcedureId string `json:"procedureId,omitempty"` 6197 6198 // StartColumn: [Output-only] One-based start column. 6199 StartColumn int64 `json:"startColumn,omitempty"` 6200 6201 // StartLine: [Output-only] One-based start line. 6202 StartLine int64 `json:"startLine,omitempty"` 6203 6204 // Text: [Output-only] Text of the current statement/expression. 6205 Text string `json:"text,omitempty"` 6206 6207 // ForceSendFields is a list of field names (e.g. "EndColumn") to 6208 // unconditionally include in API requests. By default, fields with 6209 // empty values are omitted from API requests. However, any non-pointer, 6210 // non-interface field appearing in ForceSendFields will be sent to the 6211 // server regardless of whether the field is empty or not. This may be 6212 // used to include empty fields in Patch requests. 6213 ForceSendFields []string `json:"-"` 6214 6215 // NullFields is a list of field names (e.g. "EndColumn") to include in 6216 // API requests with the JSON null value. By default, fields with empty 6217 // values are omitted from API requests. However, any field with an 6218 // empty value appearing in NullFields will be sent to the server as 6219 // null. It is an error if a field in this list has a non-empty value. 6220 // This may be used to include null fields in Patch requests. 6221 NullFields []string `json:"-"` 6222} 6223 6224func (s *ScriptStackFrame) MarshalJSON() ([]byte, error) { 6225 type NoMethod ScriptStackFrame 6226 raw := NoMethod(*s) 6227 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6228} 6229 6230type ScriptStatistics struct { 6231 // EvaluationKind: [Output-only] Whether this child job was a statement 6232 // or expression. 6233 EvaluationKind string `json:"evaluationKind,omitempty"` 6234 6235 // StackFrames: Stack trace showing the line/column/procedure name of 6236 // each frame on the stack at the point where the current evaluation 6237 // happened. The leaf frame is first, the primary script is last. Never 6238 // empty. 6239 StackFrames []*ScriptStackFrame `json:"stackFrames,omitempty"` 6240 6241 // ForceSendFields is a list of field names (e.g. "EvaluationKind") to 6242 // unconditionally include in API requests. By default, fields with 6243 // empty values are omitted from API requests. However, any non-pointer, 6244 // non-interface field appearing in ForceSendFields will be sent to the 6245 // server regardless of whether the field is empty or not. This may be 6246 // used to include empty fields in Patch requests. 6247 ForceSendFields []string `json:"-"` 6248 6249 // NullFields is a list of field names (e.g. "EvaluationKind") to 6250 // include in API requests with the JSON null value. By default, fields 6251 // with empty values are omitted from API requests. However, any field 6252 // with an empty value appearing in NullFields will be sent to the 6253 // server as null. It is an error if a field in this list has a 6254 // non-empty value. This may be used to include null fields in Patch 6255 // requests. 6256 NullFields []string `json:"-"` 6257} 6258 6259func (s *ScriptStatistics) MarshalJSON() ([]byte, error) { 6260 type NoMethod ScriptStatistics 6261 raw := NoMethod(*s) 6262 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6263} 6264 6265type SessionInfo struct { 6266 // SessionId: [Output-only] // [Preview] Id of the session. 6267 SessionId string `json:"sessionId,omitempty"` 6268 6269 // ForceSendFields is a list of field names (e.g. "SessionId") to 6270 // unconditionally include in API requests. By default, fields with 6271 // empty values are omitted from API requests. However, any non-pointer, 6272 // non-interface field appearing in ForceSendFields will be sent to the 6273 // server regardless of whether the field is empty or not. This may be 6274 // used to include empty fields in Patch requests. 6275 ForceSendFields []string `json:"-"` 6276 6277 // NullFields is a list of field names (e.g. "SessionId") to include in 6278 // API requests with the JSON null value. By default, fields with empty 6279 // values are omitted from API requests. However, any field with an 6280 // empty value appearing in NullFields will be sent to the server as 6281 // null. It is an error if a field in this list has a non-empty value. 6282 // This may be used to include null fields in Patch requests. 6283 NullFields []string `json:"-"` 6284} 6285 6286func (s *SessionInfo) MarshalJSON() ([]byte, error) { 6287 type NoMethod SessionInfo 6288 raw := NoMethod(*s) 6289 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6290} 6291 6292// SetIamPolicyRequest: Request message for `SetIamPolicy` method. 6293type SetIamPolicyRequest struct { 6294 // Policy: REQUIRED: The complete policy to be applied to the 6295 // `resource`. The size of the policy is limited to a few 10s of KB. An 6296 // empty policy is a valid policy but certain Cloud Platform services 6297 // (such as Projects) might reject them. 6298 Policy *Policy `json:"policy,omitempty"` 6299 6300 // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the 6301 // policy to modify. Only the fields in the mask will be modified. If no 6302 // mask is provided, the following default mask is used: `paths: 6303 // "bindings, etag" 6304 UpdateMask string `json:"updateMask,omitempty"` 6305 6306 // ForceSendFields is a list of field names (e.g. "Policy") to 6307 // unconditionally include in API requests. By default, fields with 6308 // empty values are omitted from API requests. However, any non-pointer, 6309 // non-interface field appearing in ForceSendFields will be sent to the 6310 // server regardless of whether the field is empty or not. This may be 6311 // used to include empty fields in Patch requests. 6312 ForceSendFields []string `json:"-"` 6313 6314 // NullFields is a list of field names (e.g. "Policy") to include in API 6315 // requests with the JSON null value. By default, fields with empty 6316 // values are omitted from API requests. However, any field with an 6317 // empty value appearing in NullFields will be sent to the server as 6318 // null. It is an error if a field in this list has a non-empty value. 6319 // This may be used to include null fields in Patch requests. 6320 NullFields []string `json:"-"` 6321} 6322 6323func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { 6324 type NoMethod SetIamPolicyRequest 6325 raw := NoMethod(*s) 6326 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6327} 6328 6329type SnapshotDefinition struct { 6330 // BaseTableReference: [Required] Reference describing the ID of the 6331 // table that is snapshotted. 6332 BaseTableReference *TableReference `json:"baseTableReference,omitempty"` 6333 6334 // SnapshotTime: [Required] The time at which the base table was 6335 // snapshot. 6336 SnapshotTime string `json:"snapshotTime,omitempty"` 6337 6338 // ForceSendFields is a list of field names (e.g. "BaseTableReference") 6339 // to unconditionally include in API requests. By default, fields with 6340 // empty values are omitted from API requests. However, any non-pointer, 6341 // non-interface field appearing in ForceSendFields will be sent to the 6342 // server regardless of whether the field is empty or not. This may be 6343 // used to include empty fields in Patch requests. 6344 ForceSendFields []string `json:"-"` 6345 6346 // NullFields is a list of field names (e.g. "BaseTableReference") to 6347 // include in API requests with the JSON null value. By default, fields 6348 // with empty values are omitted from API requests. However, any field 6349 // with an empty value appearing in NullFields will be sent to the 6350 // server as null. It is an error if a field in this list has a 6351 // non-empty value. This may be used to include null fields in Patch 6352 // requests. 6353 NullFields []string `json:"-"` 6354} 6355 6356func (s *SnapshotDefinition) MarshalJSON() ([]byte, error) { 6357 type NoMethod SnapshotDefinition 6358 raw := NoMethod(*s) 6359 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6360} 6361 6362// StandardSqlDataType: The type of a variable, e.g., a function 6363// argument. Examples: INT64: {type_kind="INT64"} ARRAY: 6364// {type_kind="ARRAY", array_element_type="STRING"} STRUCT>: 6365// {type_kind="STRUCT", struct_type={fields=[ {name="x", 6366// type={type_kind="STRING"}}, {name="y", type={type_kind="ARRAY", 6367// array_element_type="DATE"}} ]}} 6368type StandardSqlDataType struct { 6369 // ArrayElementType: The type of the array's elements, if type_kind = 6370 // "ARRAY". 6371 ArrayElementType *StandardSqlDataType `json:"arrayElementType,omitempty"` 6372 6373 // StructType: The fields of this struct, in order, if type_kind = 6374 // "STRUCT". 6375 StructType *StandardSqlStructType `json:"structType,omitempty"` 6376 6377 // TypeKind: Required. The top level type of this field. Can be any 6378 // standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 6379 // 6380 // Possible values: 6381 // "TYPE_KIND_UNSPECIFIED" - Invalid type. 6382 // "INT64" - Encoded as a string in decimal format. 6383 // "BOOL" - Encoded as a boolean "false" or "true". 6384 // "FLOAT64" - Encoded as a number, or string "NaN", "Infinity" or 6385 // "-Infinity". 6386 // "STRING" - Encoded as a string value. 6387 // "BYTES" - Encoded as a base64 string per RFC 4648, section 4. 6388 // "TIMESTAMP" - Encoded as an RFC 3339 timestamp with mandatory "Z" 6389 // time zone string: 1985-04-12T23:20:50.52Z 6390 // "DATE" - Encoded as RFC 3339 full-date format string: 1985-04-12 6391 // "TIME" - Encoded as RFC 3339 partial-time format string: 6392 // 23:20:50.52 6393 // "DATETIME" - Encoded as RFC 3339 full-date "T" partial-time: 6394 // 1985-04-12T23:20:50.52 6395 // "INTERVAL" - Encoded as fully qualified 3 part: 0-5 15 2:30:45.6 6396 // "GEOGRAPHY" - Encoded as WKT 6397 // "NUMERIC" - Encoded as a decimal string. 6398 // "BIGNUMERIC" - Encoded as a decimal string. 6399 // "ARRAY" - Encoded as a list with types matching Type.array_type. 6400 // "STRUCT" - Encoded as a list with fields of type 6401 // Type.struct_type[i]. List is used because a JSON object cannot have 6402 // duplicate field names. 6403 TypeKind string `json:"typeKind,omitempty"` 6404 6405 // ForceSendFields is a list of field names (e.g. "ArrayElementType") to 6406 // unconditionally include in API requests. By default, fields with 6407 // empty values are omitted from API requests. However, any non-pointer, 6408 // non-interface field appearing in ForceSendFields will be sent to the 6409 // server regardless of whether the field is empty or not. This may be 6410 // used to include empty fields in Patch requests. 6411 ForceSendFields []string `json:"-"` 6412 6413 // NullFields is a list of field names (e.g. "ArrayElementType") to 6414 // include in API requests with the JSON null value. By default, fields 6415 // with empty values are omitted from API requests. However, any field 6416 // with an empty value appearing in NullFields will be sent to the 6417 // server as null. It is an error if a field in this list has a 6418 // non-empty value. This may be used to include null fields in Patch 6419 // requests. 6420 NullFields []string `json:"-"` 6421} 6422 6423func (s *StandardSqlDataType) MarshalJSON() ([]byte, error) { 6424 type NoMethod StandardSqlDataType 6425 raw := NoMethod(*s) 6426 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6427} 6428 6429// StandardSqlField: A field or a column. 6430type StandardSqlField struct { 6431 // Name: Optional. The name of this field. Can be absent for struct 6432 // fields. 6433 Name string `json:"name,omitempty"` 6434 6435 // Type: Optional. The type of this parameter. Absent if not explicitly 6436 // specified (e.g., CREATE FUNCTION statement can omit the return type; 6437 // in this case the output parameter does not have this "type" field). 6438 Type *StandardSqlDataType `json:"type,omitempty"` 6439 6440 // ForceSendFields is a list of field names (e.g. "Name") to 6441 // unconditionally include in API requests. By default, fields with 6442 // empty values are omitted from API requests. However, any non-pointer, 6443 // non-interface field appearing in ForceSendFields will be sent to the 6444 // server regardless of whether the field is empty or not. This may be 6445 // used to include empty fields in Patch requests. 6446 ForceSendFields []string `json:"-"` 6447 6448 // NullFields is a list of field names (e.g. "Name") to include in API 6449 // requests with the JSON null value. By default, fields with empty 6450 // values are omitted from API requests. However, any field with an 6451 // empty value appearing in NullFields will be sent to the server as 6452 // null. It is an error if a field in this list has a non-empty value. 6453 // This may be used to include null fields in Patch requests. 6454 NullFields []string `json:"-"` 6455} 6456 6457func (s *StandardSqlField) MarshalJSON() ([]byte, error) { 6458 type NoMethod StandardSqlField 6459 raw := NoMethod(*s) 6460 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6461} 6462 6463type StandardSqlStructType struct { 6464 Fields []*StandardSqlField `json:"fields,omitempty"` 6465 6466 // ForceSendFields is a list of field names (e.g. "Fields") to 6467 // unconditionally include in API requests. By default, fields with 6468 // empty values are omitted from API requests. However, any non-pointer, 6469 // non-interface field appearing in ForceSendFields will be sent to the 6470 // server regardless of whether the field is empty or not. This may be 6471 // used to include empty fields in Patch requests. 6472 ForceSendFields []string `json:"-"` 6473 6474 // NullFields is a list of field names (e.g. "Fields") to include in API 6475 // requests with the JSON null value. By default, fields with empty 6476 // values are omitted from API requests. However, any field with an 6477 // empty value appearing in NullFields will be sent to the server as 6478 // null. It is an error if a field in this list has a non-empty value. 6479 // This may be used to include null fields in Patch requests. 6480 NullFields []string `json:"-"` 6481} 6482 6483func (s *StandardSqlStructType) MarshalJSON() ([]byte, error) { 6484 type NoMethod StandardSqlStructType 6485 raw := NoMethod(*s) 6486 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6487} 6488 6489// StandardSqlTableType: A table type 6490type StandardSqlTableType struct { 6491 // Columns: The columns in this table type 6492 Columns []*StandardSqlField `json:"columns,omitempty"` 6493 6494 // ForceSendFields is a list of field names (e.g. "Columns") to 6495 // unconditionally include in API requests. By default, fields with 6496 // empty values are omitted from API requests. However, any non-pointer, 6497 // non-interface field appearing in ForceSendFields will be sent to the 6498 // server regardless of whether the field is empty or not. This may be 6499 // used to include empty fields in Patch requests. 6500 ForceSendFields []string `json:"-"` 6501 6502 // NullFields is a list of field names (e.g. "Columns") to include in 6503 // API requests with the JSON null value. By default, fields with empty 6504 // values are omitted from API requests. However, any field with an 6505 // empty value appearing in NullFields will be sent to the server as 6506 // null. It is an error if a field in this list has a non-empty value. 6507 // This may be used to include null fields in Patch requests. 6508 NullFields []string `json:"-"` 6509} 6510 6511func (s *StandardSqlTableType) MarshalJSON() ([]byte, error) { 6512 type NoMethod StandardSqlTableType 6513 raw := NoMethod(*s) 6514 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6515} 6516 6517type Streamingbuffer struct { 6518 // EstimatedBytes: [Output-only] A lower-bound estimate of the number of 6519 // bytes currently in the streaming buffer. 6520 EstimatedBytes uint64 `json:"estimatedBytes,omitempty,string"` 6521 6522 // EstimatedRows: [Output-only] A lower-bound estimate of the number of 6523 // rows currently in the streaming buffer. 6524 EstimatedRows uint64 `json:"estimatedRows,omitempty,string"` 6525 6526 // OldestEntryTime: [Output-only] Contains the timestamp of the oldest 6527 // entry in the streaming buffer, in milliseconds since the epoch, if 6528 // the streaming buffer is available. 6529 OldestEntryTime uint64 `json:"oldestEntryTime,omitempty,string"` 6530 6531 // ForceSendFields is a list of field names (e.g. "EstimatedBytes") to 6532 // unconditionally include in API requests. By default, fields with 6533 // empty values are omitted from API requests. However, any non-pointer, 6534 // non-interface field appearing in ForceSendFields will be sent to the 6535 // server regardless of whether the field is empty or not. This may be 6536 // used to include empty fields in Patch requests. 6537 ForceSendFields []string `json:"-"` 6538 6539 // NullFields is a list of field names (e.g. "EstimatedBytes") to 6540 // include in API requests with the JSON null value. By default, fields 6541 // with empty values are omitted from API requests. However, any field 6542 // with an empty value appearing in NullFields will be sent to the 6543 // server as null. It is an error if a field in this list has a 6544 // non-empty value. This may be used to include null fields in Patch 6545 // requests. 6546 NullFields []string `json:"-"` 6547} 6548 6549func (s *Streamingbuffer) MarshalJSON() ([]byte, error) { 6550 type NoMethod Streamingbuffer 6551 raw := NoMethod(*s) 6552 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6553} 6554 6555type Table struct { 6556 // Clustering: [Beta] Clustering specification for the table. Must be 6557 // specified with partitioning, data in the table will be first 6558 // partitioned and subsequently clustered. 6559 Clustering *Clustering `json:"clustering,omitempty"` 6560 6561 // CreationTime: [Output-only] The time when this table was created, in 6562 // milliseconds since the epoch. 6563 CreationTime int64 `json:"creationTime,omitempty,string"` 6564 6565 // Description: [Optional] A user-friendly description of this table. 6566 Description string `json:"description,omitempty"` 6567 6568 // EncryptionConfiguration: Custom encryption configuration (e.g., Cloud 6569 // KMS keys). 6570 EncryptionConfiguration *EncryptionConfiguration `json:"encryptionConfiguration,omitempty"` 6571 6572 // Etag: [Output-only] A hash of the table metadata. Used to ensure 6573 // there were no concurrent modifications to the resource when 6574 // attempting an update. Not guaranteed to change when the table 6575 // contents or the fields numRows, numBytes, numLongTermBytes or 6576 // lastModifiedTime change. 6577 Etag string `json:"etag,omitempty"` 6578 6579 // ExpirationTime: [Optional] The time when this table expires, in 6580 // milliseconds since the epoch. If not present, the table will persist 6581 // indefinitely. Expired tables will be deleted and their storage 6582 // reclaimed. The defaultTableExpirationMs property of the encapsulating 6583 // dataset can be used to set a default expirationTime on newly created 6584 // tables. 6585 ExpirationTime int64 `json:"expirationTime,omitempty,string"` 6586 6587 // ExternalDataConfiguration: [Optional] Describes the data format, 6588 // location, and other properties of a table stored outside of BigQuery. 6589 // By defining these properties, the data source can then be queried as 6590 // if it were a standard BigQuery table. 6591 ExternalDataConfiguration *ExternalDataConfiguration `json:"externalDataConfiguration,omitempty"` 6592 6593 // FriendlyName: [Optional] A descriptive name for this table. 6594 FriendlyName string `json:"friendlyName,omitempty"` 6595 6596 // Id: [Output-only] An opaque ID uniquely identifying the table. 6597 Id string `json:"id,omitempty"` 6598 6599 // Kind: [Output-only] The type of the resource. 6600 Kind string `json:"kind,omitempty"` 6601 6602 // Labels: The labels associated with this table. You can use these to 6603 // organize and group your tables. Label keys and values can be no 6604 // longer than 63 characters, can only contain lowercase letters, 6605 // numeric characters, underscores and dashes. International characters 6606 // are allowed. Label values are optional. Label keys must start with a 6607 // letter and each label in the list must have a different key. 6608 Labels map[string]string `json:"labels,omitempty"` 6609 6610 // LastModifiedTime: [Output-only] The time when this table was last 6611 // modified, in milliseconds since the epoch. 6612 LastModifiedTime uint64 `json:"lastModifiedTime,omitempty,string"` 6613 6614 // Location: [Output-only] The geographic location where the table 6615 // resides. This value is inherited from the dataset. 6616 Location string `json:"location,omitempty"` 6617 6618 // MaterializedView: [Optional] Materialized view definition. 6619 MaterializedView *MaterializedViewDefinition `json:"materializedView,omitempty"` 6620 6621 // Model: [Output-only, Beta] Present iff this table represents a ML 6622 // model. Describes the training information for the model, and it is 6623 // required to run 'PREDICT' queries. 6624 Model *ModelDefinition `json:"model,omitempty"` 6625 6626 // NumBytes: [Output-only] The size of this table in bytes, excluding 6627 // any data in the streaming buffer. 6628 NumBytes int64 `json:"numBytes,omitempty,string"` 6629 6630 // NumLongTermBytes: [Output-only] The number of bytes in the table that 6631 // are considered "long-term storage". 6632 NumLongTermBytes int64 `json:"numLongTermBytes,omitempty,string"` 6633 6634 // NumPhysicalBytes: [Output-only] [TrustedTester] The physical size of 6635 // this table in bytes, excluding any data in the streaming buffer. This 6636 // includes compression and storage used for time travel. 6637 NumPhysicalBytes int64 `json:"numPhysicalBytes,omitempty,string"` 6638 6639 // NumRows: [Output-only] The number of rows of data in this table, 6640 // excluding any data in the streaming buffer. 6641 NumRows uint64 `json:"numRows,omitempty,string"` 6642 6643 // RangePartitioning: [TrustedTester] Range partitioning specification 6644 // for this table. Only one of timePartitioning and rangePartitioning 6645 // should be specified. 6646 RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"` 6647 6648 // RequirePartitionFilter: [Optional] If set to true, queries over this 6649 // table require a partition filter that can be used for partition 6650 // elimination to be specified. 6651 RequirePartitionFilter bool `json:"requirePartitionFilter,omitempty"` 6652 6653 // Schema: [Optional] Describes the schema of this table. 6654 Schema *TableSchema `json:"schema,omitempty"` 6655 6656 // SelfLink: [Output-only] A URL that can be used to access this 6657 // resource again. 6658 SelfLink string `json:"selfLink,omitempty"` 6659 6660 // SnapshotDefinition: [Output-only] Snapshot definition. 6661 SnapshotDefinition *SnapshotDefinition `json:"snapshotDefinition,omitempty"` 6662 6663 // StreamingBuffer: [Output-only] Contains information regarding this 6664 // table's streaming buffer, if one is present. This field will be 6665 // absent if the table is not being streamed to or if there is no data 6666 // in the streaming buffer. 6667 StreamingBuffer *Streamingbuffer `json:"streamingBuffer,omitempty"` 6668 6669 // TableReference: [Required] Reference describing the ID of this table. 6670 TableReference *TableReference `json:"tableReference,omitempty"` 6671 6672 // TimePartitioning: Time-based partitioning specification for this 6673 // table. Only one of timePartitioning and rangePartitioning should be 6674 // specified. 6675 TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"` 6676 6677 // Type: [Output-only] Describes the table type. The following values 6678 // are supported: TABLE: A normal BigQuery table. VIEW: A virtual table 6679 // defined by a SQL query. SNAPSHOT: An immutable, read-only table that 6680 // is a copy of another table. [TrustedTester] MATERIALIZED_VIEW: SQL 6681 // query whose result is persisted. EXTERNAL: A table that references 6682 // data stored in an external storage system, such as Google Cloud 6683 // Storage. The default value is TABLE. 6684 Type string `json:"type,omitempty"` 6685 6686 // View: [Optional] The view definition. 6687 View *ViewDefinition `json:"view,omitempty"` 6688 6689 // ServerResponse contains the HTTP response code and headers from the 6690 // server. 6691 googleapi.ServerResponse `json:"-"` 6692 6693 // ForceSendFields is a list of field names (e.g. "Clustering") to 6694 // unconditionally include in API requests. By default, fields with 6695 // empty values are omitted from API requests. However, any non-pointer, 6696 // non-interface field appearing in ForceSendFields will be sent to the 6697 // server regardless of whether the field is empty or not. This may be 6698 // used to include empty fields in Patch requests. 6699 ForceSendFields []string `json:"-"` 6700 6701 // NullFields is a list of field names (e.g. "Clustering") to include in 6702 // API requests with the JSON null value. By default, fields with empty 6703 // values are omitted from API requests. However, any field with an 6704 // empty value appearing in NullFields will be sent to the server as 6705 // null. It is an error if a field in this list has a non-empty value. 6706 // This may be used to include null fields in Patch requests. 6707 NullFields []string `json:"-"` 6708} 6709 6710func (s *Table) MarshalJSON() ([]byte, error) { 6711 type NoMethod Table 6712 raw := NoMethod(*s) 6713 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6714} 6715 6716type TableCell struct { 6717 V interface{} `json:"v,omitempty"` 6718 6719 // ForceSendFields is a list of field names (e.g. "V") to 6720 // unconditionally include in API requests. By default, fields with 6721 // empty values are omitted from API requests. However, any non-pointer, 6722 // non-interface field appearing in ForceSendFields will be sent to the 6723 // server regardless of whether the field is empty or not. This may be 6724 // used to include empty fields in Patch requests. 6725 ForceSendFields []string `json:"-"` 6726 6727 // NullFields is a list of field names (e.g. "V") to include in API 6728 // requests with the JSON null value. By default, fields with empty 6729 // values are omitted from API requests. However, any field with an 6730 // empty value appearing in NullFields will be sent to the server as 6731 // null. It is an error if a field in this list has a non-empty value. 6732 // This may be used to include null fields in Patch requests. 6733 NullFields []string `json:"-"` 6734} 6735 6736func (s *TableCell) MarshalJSON() ([]byte, error) { 6737 type NoMethod TableCell 6738 raw := NoMethod(*s) 6739 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6740} 6741 6742type TableDataInsertAllRequest struct { 6743 // IgnoreUnknownValues: [Optional] Accept rows that contain values that 6744 // do not match the schema. The unknown values are ignored. Default is 6745 // false, which treats unknown values as errors. 6746 IgnoreUnknownValues bool `json:"ignoreUnknownValues,omitempty"` 6747 6748 // Kind: The resource type of the response. 6749 Kind string `json:"kind,omitempty"` 6750 6751 // Rows: The rows to insert. 6752 Rows []*TableDataInsertAllRequestRows `json:"rows,omitempty"` 6753 6754 // SkipInvalidRows: [Optional] Insert all valid rows of a request, even 6755 // if invalid rows exist. The default value is false, which causes the 6756 // entire request to fail if any invalid rows exist. 6757 SkipInvalidRows bool `json:"skipInvalidRows,omitempty"` 6758 6759 // TemplateSuffix: If specified, treats the destination table as a base 6760 // template, and inserts the rows into an instance table named 6761 // "{destination}{templateSuffix}". BigQuery will manage creation of the 6762 // instance table, using the schema of the base template table. See 6763 // https://cloud.google.com/bigquery/streaming-data-into-bigquery#template-tables 6764 // for considerations when working with templates tables. 6765 TemplateSuffix string `json:"templateSuffix,omitempty"` 6766 6767 // ForceSendFields is a list of field names (e.g. "IgnoreUnknownValues") 6768 // to unconditionally include in API requests. By default, fields with 6769 // empty values are omitted from API requests. However, any non-pointer, 6770 // non-interface field appearing in ForceSendFields will be sent to the 6771 // server regardless of whether the field is empty or not. This may be 6772 // used to include empty fields in Patch requests. 6773 ForceSendFields []string `json:"-"` 6774 6775 // NullFields is a list of field names (e.g. "IgnoreUnknownValues") to 6776 // include in API requests with the JSON null value. By default, fields 6777 // with empty values are omitted from API requests. However, any field 6778 // with an empty value appearing in NullFields will be sent to the 6779 // server as null. It is an error if a field in this list has a 6780 // non-empty value. This may be used to include null fields in Patch 6781 // requests. 6782 NullFields []string `json:"-"` 6783} 6784 6785func (s *TableDataInsertAllRequest) MarshalJSON() ([]byte, error) { 6786 type NoMethod TableDataInsertAllRequest 6787 raw := NoMethod(*s) 6788 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6789} 6790 6791type TableDataInsertAllRequestRows struct { 6792 // InsertId: [Optional] A unique ID for each row. BigQuery uses this 6793 // property to detect duplicate insertion requests on a best-effort 6794 // basis. 6795 InsertId string `json:"insertId,omitempty"` 6796 6797 // Json: [Required] A JSON object that contains a row of data. The 6798 // object's properties and values must match the destination table's 6799 // schema. 6800 Json map[string]JsonValue `json:"json,omitempty"` 6801 6802 // ForceSendFields is a list of field names (e.g. "InsertId") to 6803 // unconditionally include in API requests. By default, fields with 6804 // empty values are omitted from API requests. However, any non-pointer, 6805 // non-interface field appearing in ForceSendFields will be sent to the 6806 // server regardless of whether the field is empty or not. This may be 6807 // used to include empty fields in Patch requests. 6808 ForceSendFields []string `json:"-"` 6809 6810 // NullFields is a list of field names (e.g. "InsertId") to include in 6811 // API requests with the JSON null value. By default, fields with empty 6812 // values are omitted from API requests. However, any field with an 6813 // empty value appearing in NullFields will be sent to the server as 6814 // null. It is an error if a field in this list has a non-empty value. 6815 // This may be used to include null fields in Patch requests. 6816 NullFields []string `json:"-"` 6817} 6818 6819func (s *TableDataInsertAllRequestRows) MarshalJSON() ([]byte, error) { 6820 type NoMethod TableDataInsertAllRequestRows 6821 raw := NoMethod(*s) 6822 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6823} 6824 6825type TableDataInsertAllResponse struct { 6826 // InsertErrors: An array of errors for rows that were not inserted. 6827 InsertErrors []*TableDataInsertAllResponseInsertErrors `json:"insertErrors,omitempty"` 6828 6829 // Kind: The resource type of the response. 6830 Kind string `json:"kind,omitempty"` 6831 6832 // ServerResponse contains the HTTP response code and headers from the 6833 // server. 6834 googleapi.ServerResponse `json:"-"` 6835 6836 // ForceSendFields is a list of field names (e.g. "InsertErrors") to 6837 // unconditionally include in API requests. By default, fields with 6838 // empty values are omitted from API requests. However, any non-pointer, 6839 // non-interface field appearing in ForceSendFields will be sent to the 6840 // server regardless of whether the field is empty or not. This may be 6841 // used to include empty fields in Patch requests. 6842 ForceSendFields []string `json:"-"` 6843 6844 // NullFields is a list of field names (e.g. "InsertErrors") to include 6845 // in API requests with the JSON null value. By default, fields with 6846 // empty values are omitted from API requests. However, any field with 6847 // an empty value appearing in NullFields will be sent to the server as 6848 // null. It is an error if a field in this list has a non-empty value. 6849 // This may be used to include null fields in Patch requests. 6850 NullFields []string `json:"-"` 6851} 6852 6853func (s *TableDataInsertAllResponse) MarshalJSON() ([]byte, error) { 6854 type NoMethod TableDataInsertAllResponse 6855 raw := NoMethod(*s) 6856 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6857} 6858 6859type TableDataInsertAllResponseInsertErrors struct { 6860 // Errors: Error information for the row indicated by the index 6861 // property. 6862 Errors []*ErrorProto `json:"errors,omitempty"` 6863 6864 // Index: The index of the row that error applies to. 6865 Index int64 `json:"index,omitempty"` 6866 6867 // ForceSendFields is a list of field names (e.g. "Errors") to 6868 // unconditionally include in API requests. By default, fields with 6869 // empty values are omitted from API requests. However, any non-pointer, 6870 // non-interface field appearing in ForceSendFields will be sent to the 6871 // server regardless of whether the field is empty or not. This may be 6872 // used to include empty fields in Patch requests. 6873 ForceSendFields []string `json:"-"` 6874 6875 // NullFields is a list of field names (e.g. "Errors") to include in API 6876 // requests with the JSON null value. By default, fields with empty 6877 // values are omitted from API requests. However, any field with an 6878 // empty value appearing in NullFields will be sent to the server as 6879 // null. It is an error if a field in this list has a non-empty value. 6880 // This may be used to include null fields in Patch requests. 6881 NullFields []string `json:"-"` 6882} 6883 6884func (s *TableDataInsertAllResponseInsertErrors) MarshalJSON() ([]byte, error) { 6885 type NoMethod TableDataInsertAllResponseInsertErrors 6886 raw := NoMethod(*s) 6887 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6888} 6889 6890type TableDataList struct { 6891 // Etag: A hash of this page of results. 6892 Etag string `json:"etag,omitempty"` 6893 6894 // Kind: The resource type of the response. 6895 Kind string `json:"kind,omitempty"` 6896 6897 // PageToken: A token used for paging results. Providing this token 6898 // instead of the startIndex parameter can help you retrieve stable 6899 // results when an underlying table is changing. 6900 PageToken string `json:"pageToken,omitempty"` 6901 6902 // Rows: Rows of results. 6903 Rows []*TableRow `json:"rows,omitempty"` 6904 6905 // TotalRows: The total number of rows in the complete table. 6906 TotalRows int64 `json:"totalRows,omitempty,string"` 6907 6908 // ServerResponse contains the HTTP response code and headers from the 6909 // server. 6910 googleapi.ServerResponse `json:"-"` 6911 6912 // ForceSendFields is a list of field names (e.g. "Etag") to 6913 // unconditionally include in API requests. By default, fields with 6914 // empty values are omitted from API requests. However, any non-pointer, 6915 // non-interface field appearing in ForceSendFields will be sent to the 6916 // server regardless of whether the field is empty or not. This may be 6917 // used to include empty fields in Patch requests. 6918 ForceSendFields []string `json:"-"` 6919 6920 // NullFields is a list of field names (e.g. "Etag") to include in API 6921 // requests with the JSON null value. By default, fields with empty 6922 // values are omitted from API requests. However, any field with an 6923 // empty value appearing in NullFields will be sent to the server as 6924 // null. It is an error if a field in this list has a non-empty value. 6925 // This may be used to include null fields in Patch requests. 6926 NullFields []string `json:"-"` 6927} 6928 6929func (s *TableDataList) MarshalJSON() ([]byte, error) { 6930 type NoMethod TableDataList 6931 raw := NoMethod(*s) 6932 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 6933} 6934 6935type TableFieldSchema struct { 6936 // Categories: [Optional] The categories attached to this field, used 6937 // for field-level access control. 6938 Categories *TableFieldSchemaCategories `json:"categories,omitempty"` 6939 6940 // Description: [Optional] The field description. The maximum length is 6941 // 1,024 characters. 6942 Description string `json:"description,omitempty"` 6943 6944 // Fields: [Optional] Describes the nested schema fields if the type 6945 // property is set to RECORD. 6946 Fields []*TableFieldSchema `json:"fields,omitempty"` 6947 6948 // MaxLength: [Optional] Maximum length of values of this field for 6949 // STRINGS or BYTES. If max_length is not specified, no maximum length 6950 // constraint is imposed on this field. If type = "STRING", then 6951 // max_length represents the maximum UTF-8 length of strings in this 6952 // field. If type = "BYTES", then max_length represents the maximum 6953 // number of bytes in this field. It is invalid to set this field if 6954 // type ≠ "STRING" and ≠ "BYTES". 6955 MaxLength int64 `json:"maxLength,omitempty,string"` 6956 6957 // Mode: [Optional] The field mode. Possible values include NULLABLE, 6958 // REQUIRED and REPEATED. The default value is NULLABLE. 6959 Mode string `json:"mode,omitempty"` 6960 6961 // Name: [Required] The field name. The name must contain only letters 6962 // (a-z, A-Z), numbers (0-9), or underscores (_), and must start with a 6963 // letter or underscore. The maximum length is 128 characters. 6964 Name string `json:"name,omitempty"` 6965 6966 PolicyTags *TableFieldSchemaPolicyTags `json:"policyTags,omitempty"` 6967 6968 // Precision: [Optional] Precision (maximum number of total digits in 6969 // base 10) and scale (maximum number of digits in the fractional part 6970 // in base 10) constraints for values of this field for NUMERIC or 6971 // BIGNUMERIC. It is invalid to set precision or scale if type ≠ 6972 // "NUMERIC" and ≠ "BIGNUMERIC". If precision and scale are not 6973 // specified, no value range constraint is imposed on this field insofar 6974 // as values are permitted by the type. Values of this NUMERIC or 6975 // BIGNUMERIC field must be in this range when: - Precision (P) and 6976 // scale (S) are specified: [-10P-S + 10-S, 10P-S - 10-S] - Precision 6977 // (P) is specified but not scale (and thus scale is interpreted to be 6978 // equal to zero): [-10P + 1, 10P - 1]. Acceptable values for precision 6979 // and scale if both are specified: - If type = "NUMERIC": 1 ≤ 6980 // precision - scale ≤ 29 and 0 ≤ scale ≤ 9. - If type = 6981 // "BIGNUMERIC": 1 ≤ precision - scale ≤ 38 and 0 ≤ scale ≤ 38. 6982 // Acceptable values for precision if only precision is specified but 6983 // not scale (and thus scale is interpreted to be equal to zero): - If 6984 // type = "NUMERIC": 1 ≤ precision ≤ 29. - If type = "BIGNUMERIC": 1 6985 // ≤ precision ≤ 38. If scale is specified but not precision, then 6986 // it is invalid. 6987 Precision int64 `json:"precision,omitempty,string"` 6988 6989 // Scale: [Optional] See documentation for precision. 6990 Scale int64 `json:"scale,omitempty,string"` 6991 6992 // Type: [Required] The field data type. Possible values include STRING, 6993 // BYTES, INTEGER, INT64 (same as INTEGER), FLOAT, FLOAT64 (same as 6994 // FLOAT), NUMERIC, BIGNUMERIC, BOOLEAN, BOOL (same as BOOLEAN), 6995 // TIMESTAMP, DATE, TIME, DATETIME, INTERVAL, RECORD (where RECORD 6996 // indicates that the field contains a nested schema) or STRUCT (same as 6997 // RECORD). 6998 Type string `json:"type,omitempty"` 6999 7000 // ForceSendFields is a list of field names (e.g. "Categories") to 7001 // unconditionally include in API requests. By default, fields with 7002 // empty values are omitted from API requests. However, any non-pointer, 7003 // non-interface field appearing in ForceSendFields will be sent to the 7004 // server regardless of whether the field is empty or not. This may be 7005 // used to include empty fields in Patch requests. 7006 ForceSendFields []string `json:"-"` 7007 7008 // NullFields is a list of field names (e.g. "Categories") to include in 7009 // API requests with the JSON null value. By default, fields with empty 7010 // values are omitted from API requests. However, any field with an 7011 // empty value appearing in NullFields will be sent to the server as 7012 // null. It is an error if a field in this list has a non-empty value. 7013 // This may be used to include null fields in Patch requests. 7014 NullFields []string `json:"-"` 7015} 7016 7017func (s *TableFieldSchema) MarshalJSON() ([]byte, error) { 7018 type NoMethod TableFieldSchema 7019 raw := NoMethod(*s) 7020 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7021} 7022 7023// TableFieldSchemaCategories: [Optional] The categories attached to 7024// this field, used for field-level access control. 7025type TableFieldSchemaCategories struct { 7026 // Names: A list of category resource names. For example, 7027 // "projects/1/taxonomies/2/categories/3". At most 5 categories are 7028 // allowed. 7029 Names []string `json:"names,omitempty"` 7030 7031 // ForceSendFields is a list of field names (e.g. "Names") to 7032 // unconditionally include in API requests. By default, fields with 7033 // empty values are omitted from API requests. However, any non-pointer, 7034 // non-interface field appearing in ForceSendFields will be sent to the 7035 // server regardless of whether the field is empty or not. This may be 7036 // used to include empty fields in Patch requests. 7037 ForceSendFields []string `json:"-"` 7038 7039 // NullFields is a list of field names (e.g. "Names") to include in API 7040 // requests with the JSON null value. By default, fields with empty 7041 // values are omitted from API requests. However, any field with an 7042 // empty value appearing in NullFields will be sent to the server as 7043 // null. It is an error if a field in this list has a non-empty value. 7044 // This may be used to include null fields in Patch requests. 7045 NullFields []string `json:"-"` 7046} 7047 7048func (s *TableFieldSchemaCategories) MarshalJSON() ([]byte, error) { 7049 type NoMethod TableFieldSchemaCategories 7050 raw := NoMethod(*s) 7051 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7052} 7053 7054type TableFieldSchemaPolicyTags struct { 7055 // Names: A list of category resource names. For example, 7056 // "projects/1/location/eu/taxonomies/2/policyTags/3". At most 1 policy 7057 // tag is allowed. 7058 Names []string `json:"names,omitempty"` 7059 7060 // ForceSendFields is a list of field names (e.g. "Names") to 7061 // unconditionally include in API requests. By default, fields with 7062 // empty values are omitted from API requests. However, any non-pointer, 7063 // non-interface field appearing in ForceSendFields will be sent to the 7064 // server regardless of whether the field is empty or not. This may be 7065 // used to include empty fields in Patch requests. 7066 ForceSendFields []string `json:"-"` 7067 7068 // NullFields is a list of field names (e.g. "Names") to include in API 7069 // requests with the JSON null value. By default, fields with empty 7070 // values are omitted from API requests. However, any field with an 7071 // empty value appearing in NullFields will be sent to the server as 7072 // null. It is an error if a field in this list has a non-empty value. 7073 // This may be used to include null fields in Patch requests. 7074 NullFields []string `json:"-"` 7075} 7076 7077func (s *TableFieldSchemaPolicyTags) MarshalJSON() ([]byte, error) { 7078 type NoMethod TableFieldSchemaPolicyTags 7079 raw := NoMethod(*s) 7080 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7081} 7082 7083type TableList struct { 7084 // Etag: A hash of this page of results. 7085 Etag string `json:"etag,omitempty"` 7086 7087 // Kind: The type of list. 7088 Kind string `json:"kind,omitempty"` 7089 7090 // NextPageToken: A token to request the next page of results. 7091 NextPageToken string `json:"nextPageToken,omitempty"` 7092 7093 // Tables: Tables in the requested dataset. 7094 Tables []*TableListTables `json:"tables,omitempty"` 7095 7096 // TotalItems: The total number of tables in the dataset. 7097 TotalItems int64 `json:"totalItems,omitempty"` 7098 7099 // ServerResponse contains the HTTP response code and headers from the 7100 // server. 7101 googleapi.ServerResponse `json:"-"` 7102 7103 // ForceSendFields is a list of field names (e.g. "Etag") to 7104 // unconditionally include in API requests. By default, fields with 7105 // empty values are omitted from API requests. However, any non-pointer, 7106 // non-interface field appearing in ForceSendFields will be sent to the 7107 // server regardless of whether the field is empty or not. This may be 7108 // used to include empty fields in Patch requests. 7109 ForceSendFields []string `json:"-"` 7110 7111 // NullFields is a list of field names (e.g. "Etag") to include in API 7112 // requests with the JSON null value. By default, fields with empty 7113 // values are omitted from API requests. However, any field with an 7114 // empty value appearing in NullFields will be sent to the server as 7115 // null. It is an error if a field in this list has a non-empty value. 7116 // This may be used to include null fields in Patch requests. 7117 NullFields []string `json:"-"` 7118} 7119 7120func (s *TableList) MarshalJSON() ([]byte, error) { 7121 type NoMethod TableList 7122 raw := NoMethod(*s) 7123 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7124} 7125 7126type TableListTables struct { 7127 // Clustering: [Beta] Clustering specification for this table, if 7128 // configured. 7129 Clustering *Clustering `json:"clustering,omitempty"` 7130 7131 // CreationTime: The time when this table was created, in milliseconds 7132 // since the epoch. 7133 CreationTime int64 `json:"creationTime,omitempty,string"` 7134 7135 // ExpirationTime: [Optional] The time when this table expires, in 7136 // milliseconds since the epoch. If not present, the table will persist 7137 // indefinitely. Expired tables will be deleted and their storage 7138 // reclaimed. 7139 ExpirationTime int64 `json:"expirationTime,omitempty,string"` 7140 7141 // FriendlyName: The user-friendly name for this table. 7142 FriendlyName string `json:"friendlyName,omitempty"` 7143 7144 // Id: An opaque ID of the table 7145 Id string `json:"id,omitempty"` 7146 7147 // Kind: The resource type. 7148 Kind string `json:"kind,omitempty"` 7149 7150 // Labels: The labels associated with this table. You can use these to 7151 // organize and group your tables. 7152 Labels map[string]string `json:"labels,omitempty"` 7153 7154 // RangePartitioning: The range partitioning specification for this 7155 // table, if configured. 7156 RangePartitioning *RangePartitioning `json:"rangePartitioning,omitempty"` 7157 7158 // TableReference: A reference uniquely identifying the table. 7159 TableReference *TableReference `json:"tableReference,omitempty"` 7160 7161 // TimePartitioning: The time-based partitioning specification for this 7162 // table, if configured. 7163 TimePartitioning *TimePartitioning `json:"timePartitioning,omitempty"` 7164 7165 // Type: The type of table. Possible values are: TABLE, VIEW. 7166 Type string `json:"type,omitempty"` 7167 7168 // View: Additional details for a view. 7169 View *TableListTablesView `json:"view,omitempty"` 7170 7171 // ForceSendFields is a list of field names (e.g. "Clustering") to 7172 // unconditionally include in API requests. By default, fields with 7173 // empty values are omitted from API requests. However, any non-pointer, 7174 // non-interface field appearing in ForceSendFields will be sent to the 7175 // server regardless of whether the field is empty or not. This may be 7176 // used to include empty fields in Patch requests. 7177 ForceSendFields []string `json:"-"` 7178 7179 // NullFields is a list of field names (e.g. "Clustering") to include in 7180 // API requests with the JSON null value. By default, fields with empty 7181 // values are omitted from API requests. However, any field with an 7182 // empty value appearing in NullFields will be sent to the server as 7183 // null. It is an error if a field in this list has a non-empty value. 7184 // This may be used to include null fields in Patch requests. 7185 NullFields []string `json:"-"` 7186} 7187 7188func (s *TableListTables) MarshalJSON() ([]byte, error) { 7189 type NoMethod TableListTables 7190 raw := NoMethod(*s) 7191 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7192} 7193 7194// TableListTablesView: Additional details for a view. 7195type TableListTablesView struct { 7196 // UseLegacySql: True if view is defined in legacy SQL dialect, false if 7197 // in standard SQL. 7198 UseLegacySql bool `json:"useLegacySql,omitempty"` 7199 7200 // ForceSendFields is a list of field names (e.g. "UseLegacySql") to 7201 // unconditionally include in API requests. By default, fields with 7202 // empty values are omitted from API requests. However, any non-pointer, 7203 // non-interface field appearing in ForceSendFields will be sent to the 7204 // server regardless of whether the field is empty or not. This may be 7205 // used to include empty fields in Patch requests. 7206 ForceSendFields []string `json:"-"` 7207 7208 // NullFields is a list of field names (e.g. "UseLegacySql") to include 7209 // in API requests with the JSON null value. By default, fields with 7210 // empty values are omitted from API requests. However, any field with 7211 // an empty value appearing in NullFields will be sent to the server as 7212 // null. It is an error if a field in this list has a non-empty value. 7213 // This may be used to include null fields in Patch requests. 7214 NullFields []string `json:"-"` 7215} 7216 7217func (s *TableListTablesView) MarshalJSON() ([]byte, error) { 7218 type NoMethod TableListTablesView 7219 raw := NoMethod(*s) 7220 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7221} 7222 7223type TableReference struct { 7224 // DatasetId: [Required] The ID of the dataset containing this table. 7225 DatasetId string `json:"datasetId,omitempty"` 7226 7227 // ProjectId: [Required] The ID of the project containing this table. 7228 ProjectId string `json:"projectId,omitempty"` 7229 7230 // TableId: [Required] The ID of the table. The ID must contain only 7231 // letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum 7232 // length is 1,024 characters. 7233 TableId string `json:"tableId,omitempty"` 7234 7235 // ForceSendFields is a list of field names (e.g. "DatasetId") to 7236 // unconditionally include in API requests. By default, fields with 7237 // empty values are omitted from API requests. However, any non-pointer, 7238 // non-interface field appearing in ForceSendFields will be sent to the 7239 // server regardless of whether the field is empty or not. This may be 7240 // used to include empty fields in Patch requests. 7241 ForceSendFields []string `json:"-"` 7242 7243 // NullFields is a list of field names (e.g. "DatasetId") to include in 7244 // API requests with the JSON null value. By default, fields with empty 7245 // values are omitted from API requests. However, any field with an 7246 // empty value appearing in NullFields will be sent to the server as 7247 // null. It is an error if a field in this list has a non-empty value. 7248 // This may be used to include null fields in Patch requests. 7249 NullFields []string `json:"-"` 7250} 7251 7252func (s *TableReference) MarshalJSON() ([]byte, error) { 7253 type NoMethod TableReference 7254 raw := NoMethod(*s) 7255 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7256} 7257 7258type TableRow struct { 7259 // F: Represents a single row in the result set, consisting of one or 7260 // more fields. 7261 F []*TableCell `json:"f,omitempty"` 7262 7263 // ForceSendFields is a list of field names (e.g. "F") to 7264 // unconditionally include in API requests. By default, fields with 7265 // empty values are omitted from API requests. However, any non-pointer, 7266 // non-interface field appearing in ForceSendFields will be sent to the 7267 // server regardless of whether the field is empty or not. This may be 7268 // used to include empty fields in Patch requests. 7269 ForceSendFields []string `json:"-"` 7270 7271 // NullFields is a list of field names (e.g. "F") to include in API 7272 // requests with the JSON null value. By default, fields with empty 7273 // values are omitted from API requests. However, any field with an 7274 // empty value appearing in NullFields will be sent to the server as 7275 // null. It is an error if a field in this list has a non-empty value. 7276 // This may be used to include null fields in Patch requests. 7277 NullFields []string `json:"-"` 7278} 7279 7280func (s *TableRow) MarshalJSON() ([]byte, error) { 7281 type NoMethod TableRow 7282 raw := NoMethod(*s) 7283 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7284} 7285 7286type TableSchema struct { 7287 // Fields: Describes the fields in a table. 7288 Fields []*TableFieldSchema `json:"fields,omitempty"` 7289 7290 // ForceSendFields is a list of field names (e.g. "Fields") to 7291 // unconditionally include in API requests. By default, fields with 7292 // empty values are omitted from API requests. However, any non-pointer, 7293 // non-interface field appearing in ForceSendFields will be sent to the 7294 // server regardless of whether the field is empty or not. This may be 7295 // used to include empty fields in Patch requests. 7296 ForceSendFields []string `json:"-"` 7297 7298 // NullFields is a list of field names (e.g. "Fields") to include in API 7299 // requests with the JSON null value. By default, fields with empty 7300 // values are omitted from API requests. However, any field with an 7301 // empty value appearing in NullFields will be sent to the server as 7302 // null. It is an error if a field in this list has a non-empty value. 7303 // This may be used to include null fields in Patch requests. 7304 NullFields []string `json:"-"` 7305} 7306 7307func (s *TableSchema) MarshalJSON() ([]byte, error) { 7308 type NoMethod TableSchema 7309 raw := NoMethod(*s) 7310 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7311} 7312 7313// TestIamPermissionsRequest: Request message for `TestIamPermissions` 7314// method. 7315type TestIamPermissionsRequest struct { 7316 // Permissions: The set of permissions to check for the `resource`. 7317 // Permissions with wildcards (such as '*' or 'storage.*') are not 7318 // allowed. For more information see IAM Overview 7319 // (https://cloud.google.com/iam/docs/overview#permissions). 7320 Permissions []string `json:"permissions,omitempty"` 7321 7322 // ForceSendFields is a list of field names (e.g. "Permissions") to 7323 // unconditionally include in API requests. By default, fields with 7324 // empty values are omitted from API requests. However, any non-pointer, 7325 // non-interface field appearing in ForceSendFields will be sent to the 7326 // server regardless of whether the field is empty or not. This may be 7327 // used to include empty fields in Patch requests. 7328 ForceSendFields []string `json:"-"` 7329 7330 // NullFields is a list of field names (e.g. "Permissions") to include 7331 // in API requests with the JSON null value. By default, fields with 7332 // empty values are omitted from API requests. However, any field with 7333 // an empty value appearing in NullFields will be sent to the server as 7334 // null. It is an error if a field in this list has a non-empty value. 7335 // This may be used to include null fields in Patch requests. 7336 NullFields []string `json:"-"` 7337} 7338 7339func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { 7340 type NoMethod TestIamPermissionsRequest 7341 raw := NoMethod(*s) 7342 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7343} 7344 7345// TestIamPermissionsResponse: Response message for `TestIamPermissions` 7346// method. 7347type TestIamPermissionsResponse struct { 7348 // Permissions: A subset of `TestPermissionsRequest.permissions` that 7349 // the caller is allowed. 7350 Permissions []string `json:"permissions,omitempty"` 7351 7352 // ServerResponse contains the HTTP response code and headers from the 7353 // server. 7354 googleapi.ServerResponse `json:"-"` 7355 7356 // ForceSendFields is a list of field names (e.g. "Permissions") to 7357 // unconditionally include in API requests. By default, fields with 7358 // empty values are omitted from API requests. However, any non-pointer, 7359 // non-interface field appearing in ForceSendFields will be sent to the 7360 // server regardless of whether the field is empty or not. This may be 7361 // used to include empty fields in Patch requests. 7362 ForceSendFields []string `json:"-"` 7363 7364 // NullFields is a list of field names (e.g. "Permissions") to include 7365 // in API requests with the JSON null value. By default, fields with 7366 // empty values are omitted from API requests. However, any field with 7367 // an empty value appearing in NullFields will be sent to the server as 7368 // null. It is an error if a field in this list has a non-empty value. 7369 // This may be used to include null fields in Patch requests. 7370 NullFields []string `json:"-"` 7371} 7372 7373func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { 7374 type NoMethod TestIamPermissionsResponse 7375 raw := NoMethod(*s) 7376 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7377} 7378 7379type TimePartitioning struct { 7380 // ExpirationMs: [Optional] Number of milliseconds for which to keep the 7381 // storage for partitions in the table. The storage in a partition will 7382 // have an expiration time of its partition time plus this value. 7383 ExpirationMs int64 `json:"expirationMs,omitempty,string"` 7384 7385 // Field: [Beta] [Optional] If not set, the table is partitioned by 7386 // pseudo column, referenced via either '_PARTITIONTIME' as TIMESTAMP 7387 // type, or '_PARTITIONDATE' as DATE type. If field is specified, the 7388 // table is instead partitioned by this field. The field must be a 7389 // top-level TIMESTAMP or DATE field. Its mode must be NULLABLE or 7390 // REQUIRED. 7391 Field string `json:"field,omitempty"` 7392 7393 RequirePartitionFilter bool `json:"requirePartitionFilter,omitempty"` 7394 7395 // Type: [Required] The supported types are DAY, HOUR, MONTH, and YEAR, 7396 // which will generate one partition per day, hour, month, and year, 7397 // respectively. When the type is not specified, the default behavior is 7398 // DAY. 7399 Type string `json:"type,omitempty"` 7400 7401 // ForceSendFields is a list of field names (e.g. "ExpirationMs") to 7402 // unconditionally include in API requests. By default, fields with 7403 // empty values are omitted from API requests. However, any non-pointer, 7404 // non-interface field appearing in ForceSendFields will be sent to the 7405 // server regardless of whether the field is empty or not. This may be 7406 // used to include empty fields in Patch requests. 7407 ForceSendFields []string `json:"-"` 7408 7409 // NullFields is a list of field names (e.g. "ExpirationMs") to include 7410 // in API requests with the JSON null value. By default, fields with 7411 // empty values are omitted from API requests. However, any field with 7412 // an empty value appearing in NullFields will be sent to the server as 7413 // null. It is an error if a field in this list has a non-empty value. 7414 // This may be used to include null fields in Patch requests. 7415 NullFields []string `json:"-"` 7416} 7417 7418func (s *TimePartitioning) MarshalJSON() ([]byte, error) { 7419 type NoMethod TimePartitioning 7420 raw := NoMethod(*s) 7421 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7422} 7423 7424// TrainingOptions: Options used in model training. 7425type TrainingOptions struct { 7426 // AdjustStepChanges: If true, detect step changes and make data 7427 // adjustment in the input time series. 7428 AdjustStepChanges bool `json:"adjustStepChanges,omitempty"` 7429 7430 // AutoArima: Whether to enable auto ARIMA or not. 7431 AutoArima bool `json:"autoArima,omitempty"` 7432 7433 // AutoArimaMaxOrder: The max value of non-seasonal p and q. 7434 AutoArimaMaxOrder int64 `json:"autoArimaMaxOrder,omitempty,string"` 7435 7436 // BatchSize: Batch size for dnn models. 7437 BatchSize int64 `json:"batchSize,omitempty,string"` 7438 7439 // CleanSpikesAndDips: If true, clean spikes and dips in the input time 7440 // series. 7441 CleanSpikesAndDips bool `json:"cleanSpikesAndDips,omitempty"` 7442 7443 // DataFrequency: The data frequency of a time series. 7444 // 7445 // Possible values: 7446 // "DATA_FREQUENCY_UNSPECIFIED" 7447 // "AUTO_FREQUENCY" - Automatically inferred from timestamps. 7448 // "YEARLY" - Yearly data. 7449 // "QUARTERLY" - Quarterly data. 7450 // "MONTHLY" - Monthly data. 7451 // "WEEKLY" - Weekly data. 7452 // "DAILY" - Daily data. 7453 // "HOURLY" - Hourly data. 7454 // "PER_MINUTE" - Per-minute data. 7455 DataFrequency string `json:"dataFrequency,omitempty"` 7456 7457 // DataSplitColumn: The column to split data with. This column won't be 7458 // used as a feature. 1. When data_split_method is CUSTOM, the 7459 // corresponding column should be boolean. The rows with true value tag 7460 // are eval data, and the false are training data. 2. When 7461 // data_split_method is SEQ, the first DATA_SPLIT_EVAL_FRACTION rows 7462 // (from smallest to largest) in the corresponding column are used as 7463 // training data, and the rest are eval data. It respects the order in 7464 // Orderable data types: 7465 // https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#data-type-properties 7466 DataSplitColumn string `json:"dataSplitColumn,omitempty"` 7467 7468 // DataSplitEvalFraction: The fraction of evaluation data over the whole 7469 // input data. The rest of data will be used as training data. The 7470 // format should be double. Accurate to two decimal places. Default 7471 // value is 0.2. 7472 DataSplitEvalFraction float64 `json:"dataSplitEvalFraction,omitempty"` 7473 7474 // DataSplitMethod: The data split type for training and evaluation, 7475 // e.g. RANDOM. 7476 // 7477 // Possible values: 7478 // "DATA_SPLIT_METHOD_UNSPECIFIED" 7479 // "RANDOM" - Splits data randomly. 7480 // "CUSTOM" - Splits data with the user provided tags. 7481 // "SEQUENTIAL" - Splits data sequentially. 7482 // "NO_SPLIT" - Data split will be skipped. 7483 // "AUTO_SPLIT" - Splits data automatically: Uses NO_SPLIT if the data 7484 // size is small. Otherwise uses RANDOM. 7485 DataSplitMethod string `json:"dataSplitMethod,omitempty"` 7486 7487 // DecomposeTimeSeries: If true, perform decompose time series and save 7488 // the results. 7489 DecomposeTimeSeries bool `json:"decomposeTimeSeries,omitempty"` 7490 7491 // DistanceType: Distance type for clustering models. 7492 // 7493 // Possible values: 7494 // "DISTANCE_TYPE_UNSPECIFIED" 7495 // "EUCLIDEAN" - Eculidean distance. 7496 // "COSINE" - Cosine distance. 7497 DistanceType string `json:"distanceType,omitempty"` 7498 7499 // Dropout: Dropout probability for dnn models. 7500 Dropout float64 `json:"dropout,omitempty"` 7501 7502 // EarlyStop: Whether to stop early when the loss doesn't improve 7503 // significantly any more (compared to min_relative_progress). Used only 7504 // for iterative training algorithms. 7505 EarlyStop bool `json:"earlyStop,omitempty"` 7506 7507 // FeedbackType: Feedback type that specifies which algorithm to run for 7508 // matrix factorization. 7509 // 7510 // Possible values: 7511 // "FEEDBACK_TYPE_UNSPECIFIED" 7512 // "IMPLICIT" - Use weighted-als for implicit feedback problems. 7513 // "EXPLICIT" - Use nonweighted-als for explicit feedback problems. 7514 FeedbackType string `json:"feedbackType,omitempty"` 7515 7516 // HiddenUnits: Hidden units for dnn models. 7517 HiddenUnits googleapi.Int64s `json:"hiddenUnits,omitempty"` 7518 7519 // HolidayRegion: The geographical region based on which the holidays 7520 // are considered in time series modeling. If a valid value is 7521 // specified, then holiday effects modeling is enabled. 7522 // 7523 // Possible values: 7524 // "HOLIDAY_REGION_UNSPECIFIED" - Holiday region unspecified. 7525 // "GLOBAL" - Global. 7526 // "NA" - North America. 7527 // "JAPAC" - Japan and Asia Pacific: Korea, Greater China, India, 7528 // Australia, and New Zealand. 7529 // "EMEA" - Europe, the Middle East and Africa. 7530 // "LAC" - Latin America and the Caribbean. 7531 // "AE" - United Arab Emirates 7532 // "AR" - Argentina 7533 // "AT" - Austria 7534 // "AU" - Australia 7535 // "BE" - Belgium 7536 // "BR" - Brazil 7537 // "CA" - Canada 7538 // "CH" - Switzerland 7539 // "CL" - Chile 7540 // "CN" - China 7541 // "CO" - Colombia 7542 // "CS" - Czechoslovakia 7543 // "CZ" - Czech Republic 7544 // "DE" - Germany 7545 // "DK" - Denmark 7546 // "DZ" - Algeria 7547 // "EC" - Ecuador 7548 // "EE" - Estonia 7549 // "EG" - Egypt 7550 // "ES" - Spain 7551 // "FI" - Finland 7552 // "FR" - France 7553 // "GB" - Great Britain (United Kingdom) 7554 // "GR" - Greece 7555 // "HK" - Hong Kong 7556 // "HU" - Hungary 7557 // "ID" - Indonesia 7558 // "IE" - Ireland 7559 // "IL" - Israel 7560 // "IN" - India 7561 // "IR" - Iran 7562 // "IT" - Italy 7563 // "JP" - Japan 7564 // "KR" - Korea (South) 7565 // "LV" - Latvia 7566 // "MA" - Morocco 7567 // "MX" - Mexico 7568 // "MY" - Malaysia 7569 // "NG" - Nigeria 7570 // "NL" - Netherlands 7571 // "NO" - Norway 7572 // "NZ" - New Zealand 7573 // "PE" - Peru 7574 // "PH" - Philippines 7575 // "PK" - Pakistan 7576 // "PL" - Poland 7577 // "PT" - Portugal 7578 // "RO" - Romania 7579 // "RS" - Serbia 7580 // "RU" - Russian Federation 7581 // "SA" - Saudi Arabia 7582 // "SE" - Sweden 7583 // "SG" - Singapore 7584 // "SI" - Slovenia 7585 // "SK" - Slovakia 7586 // "TH" - Thailand 7587 // "TR" - Turkey 7588 // "TW" - Taiwan 7589 // "UA" - Ukraine 7590 // "US" - United States 7591 // "VE" - Venezuela 7592 // "VN" - Viet Nam 7593 // "ZA" - South Africa 7594 HolidayRegion string `json:"holidayRegion,omitempty"` 7595 7596 // Horizon: The number of periods ahead that need to be forecasted. 7597 Horizon int64 `json:"horizon,omitempty,string"` 7598 7599 // IncludeDrift: Include drift when fitting an ARIMA model. 7600 IncludeDrift bool `json:"includeDrift,omitempty"` 7601 7602 // InitialLearnRate: Specifies the initial learning rate for the line 7603 // search learn rate strategy. 7604 InitialLearnRate float64 `json:"initialLearnRate,omitempty"` 7605 7606 // InputLabelColumns: Name of input label columns in training data. 7607 InputLabelColumns []string `json:"inputLabelColumns,omitempty"` 7608 7609 // ItemColumn: Item column specified for matrix factorization models. 7610 ItemColumn string `json:"itemColumn,omitempty"` 7611 7612 // KmeansInitializationColumn: The column used to provide the initial 7613 // centroids for kmeans algorithm when kmeans_initialization_method is 7614 // CUSTOM. 7615 KmeansInitializationColumn string `json:"kmeansInitializationColumn,omitempty"` 7616 7617 // KmeansInitializationMethod: The method used to initialize the 7618 // centroids for kmeans algorithm. 7619 // 7620 // Possible values: 7621 // "KMEANS_INITIALIZATION_METHOD_UNSPECIFIED" - Unspecified 7622 // initialization method. 7623 // "RANDOM" - Initializes the centroids randomly. 7624 // "CUSTOM" - Initializes the centroids using data specified in 7625 // kmeans_initialization_column. 7626 // "KMEANS_PLUS_PLUS" - Initializes with kmeans++. 7627 KmeansInitializationMethod string `json:"kmeansInitializationMethod,omitempty"` 7628 7629 // L1Regularization: L1 regularization coefficient. 7630 L1Regularization float64 `json:"l1Regularization,omitempty"` 7631 7632 // L2Regularization: L2 regularization coefficient. 7633 L2Regularization float64 `json:"l2Regularization,omitempty"` 7634 7635 // LabelClassWeights: Weights associated with each label class, for 7636 // rebalancing the training data. Only applicable for classification 7637 // models. 7638 LabelClassWeights map[string]float64 `json:"labelClassWeights,omitempty"` 7639 7640 // LearnRate: Learning rate in training. Used only for iterative 7641 // training algorithms. 7642 LearnRate float64 `json:"learnRate,omitempty"` 7643 7644 // LearnRateStrategy: The strategy to determine learn rate for the 7645 // current iteration. 7646 // 7647 // Possible values: 7648 // "LEARN_RATE_STRATEGY_UNSPECIFIED" 7649 // "LINE_SEARCH" - Use line search to determine learning rate. 7650 // "CONSTANT" - Use a constant learning rate. 7651 LearnRateStrategy string `json:"learnRateStrategy,omitempty"` 7652 7653 // LossType: Type of loss function used during training run. 7654 // 7655 // Possible values: 7656 // "LOSS_TYPE_UNSPECIFIED" 7657 // "MEAN_SQUARED_LOSS" - Mean squared loss, used for linear 7658 // regression. 7659 // "MEAN_LOG_LOSS" - Mean log loss, used for logistic regression. 7660 LossType string `json:"lossType,omitempty"` 7661 7662 // MaxIterations: The maximum number of iterations in training. Used 7663 // only for iterative training algorithms. 7664 MaxIterations int64 `json:"maxIterations,omitempty,string"` 7665 7666 // MaxTreeDepth: Maximum depth of a tree for boosted tree models. 7667 MaxTreeDepth int64 `json:"maxTreeDepth,omitempty,string"` 7668 7669 // MinRelativeProgress: When early_stop is true, stops training when 7670 // accuracy improvement is less than 'min_relative_progress'. Used only 7671 // for iterative training algorithms. 7672 MinRelativeProgress float64 `json:"minRelativeProgress,omitempty"` 7673 7674 // MinSplitLoss: Minimum split loss for boosted tree models. 7675 MinSplitLoss float64 `json:"minSplitLoss,omitempty"` 7676 7677 // ModelUri: Google Cloud Storage URI from which the model was imported. 7678 // Only applicable for imported models. 7679 ModelUri string `json:"modelUri,omitempty"` 7680 7681 // NonSeasonalOrder: A specification of the non-seasonal part of the 7682 // ARIMA model: the three components (p, d, q) are the AR order, the 7683 // degree of differencing, and the MA order. 7684 NonSeasonalOrder *ArimaOrder `json:"nonSeasonalOrder,omitempty"` 7685 7686 // NumClusters: Number of clusters for clustering models. 7687 NumClusters int64 `json:"numClusters,omitempty,string"` 7688 7689 // NumFactors: Num factors specified for matrix factorization models. 7690 NumFactors int64 `json:"numFactors,omitempty,string"` 7691 7692 // OptimizationStrategy: Optimization strategy for training linear 7693 // regression models. 7694 // 7695 // Possible values: 7696 // "OPTIMIZATION_STRATEGY_UNSPECIFIED" 7697 // "BATCH_GRADIENT_DESCENT" - Uses an iterative batch gradient descent 7698 // algorithm. 7699 // "NORMAL_EQUATION" - Uses a normal equation to solve linear 7700 // regression problem. 7701 OptimizationStrategy string `json:"optimizationStrategy,omitempty"` 7702 7703 // PreserveInputStructs: Whether to preserve the input structs in output 7704 // feature names. Suppose there is a struct A with field b. When false 7705 // (default), the output feature name is A_b. When true, the output 7706 // feature name is A.b. 7707 PreserveInputStructs bool `json:"preserveInputStructs,omitempty"` 7708 7709 // Subsample: Subsample fraction of the training data to grow tree to 7710 // prevent overfitting for boosted tree models. 7711 Subsample float64 `json:"subsample,omitempty"` 7712 7713 // TimeSeriesDataColumn: Column to be designated as time series data for 7714 // ARIMA model. 7715 TimeSeriesDataColumn string `json:"timeSeriesDataColumn,omitempty"` 7716 7717 // TimeSeriesIdColumn: The time series id column that was used during 7718 // ARIMA model training. 7719 TimeSeriesIdColumn string `json:"timeSeriesIdColumn,omitempty"` 7720 7721 // TimeSeriesIdColumns: The time series id columns that were used during 7722 // ARIMA model training. 7723 TimeSeriesIdColumns []string `json:"timeSeriesIdColumns,omitempty"` 7724 7725 // TimeSeriesTimestampColumn: Column to be designated as time series 7726 // timestamp for ARIMA model. 7727 TimeSeriesTimestampColumn string `json:"timeSeriesTimestampColumn,omitempty"` 7728 7729 // UserColumn: User column specified for matrix factorization models. 7730 UserColumn string `json:"userColumn,omitempty"` 7731 7732 // WalsAlpha: Hyperparameter for matrix factoration when implicit 7733 // feedback type is specified. 7734 WalsAlpha float64 `json:"walsAlpha,omitempty"` 7735 7736 // WarmStart: Whether to train a model from the last checkpoint. 7737 WarmStart bool `json:"warmStart,omitempty"` 7738 7739 // ForceSendFields is a list of field names (e.g. "AdjustStepChanges") 7740 // to unconditionally include in API requests. By default, fields with 7741 // empty values are omitted from API requests. However, any non-pointer, 7742 // non-interface field appearing in ForceSendFields will be sent to the 7743 // server regardless of whether the field is empty or not. This may be 7744 // used to include empty fields in Patch requests. 7745 ForceSendFields []string `json:"-"` 7746 7747 // NullFields is a list of field names (e.g. "AdjustStepChanges") to 7748 // include in API requests with the JSON null value. By default, fields 7749 // with empty values are omitted from API requests. However, any field 7750 // with an empty value appearing in NullFields will be sent to the 7751 // server as null. It is an error if a field in this list has a 7752 // non-empty value. This may be used to include null fields in Patch 7753 // requests. 7754 NullFields []string `json:"-"` 7755} 7756 7757func (s *TrainingOptions) MarshalJSON() ([]byte, error) { 7758 type NoMethod TrainingOptions 7759 raw := NoMethod(*s) 7760 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7761} 7762 7763func (s *TrainingOptions) UnmarshalJSON(data []byte) error { 7764 type NoMethod TrainingOptions 7765 var s1 struct { 7766 DataSplitEvalFraction gensupport.JSONFloat64 `json:"dataSplitEvalFraction"` 7767 Dropout gensupport.JSONFloat64 `json:"dropout"` 7768 InitialLearnRate gensupport.JSONFloat64 `json:"initialLearnRate"` 7769 L1Regularization gensupport.JSONFloat64 `json:"l1Regularization"` 7770 L2Regularization gensupport.JSONFloat64 `json:"l2Regularization"` 7771 LearnRate gensupport.JSONFloat64 `json:"learnRate"` 7772 MinRelativeProgress gensupport.JSONFloat64 `json:"minRelativeProgress"` 7773 MinSplitLoss gensupport.JSONFloat64 `json:"minSplitLoss"` 7774 Subsample gensupport.JSONFloat64 `json:"subsample"` 7775 WalsAlpha gensupport.JSONFloat64 `json:"walsAlpha"` 7776 *NoMethod 7777 } 7778 s1.NoMethod = (*NoMethod)(s) 7779 if err := json.Unmarshal(data, &s1); err != nil { 7780 return err 7781 } 7782 s.DataSplitEvalFraction = float64(s1.DataSplitEvalFraction) 7783 s.Dropout = float64(s1.Dropout) 7784 s.InitialLearnRate = float64(s1.InitialLearnRate) 7785 s.L1Regularization = float64(s1.L1Regularization) 7786 s.L2Regularization = float64(s1.L2Regularization) 7787 s.LearnRate = float64(s1.LearnRate) 7788 s.MinRelativeProgress = float64(s1.MinRelativeProgress) 7789 s.MinSplitLoss = float64(s1.MinSplitLoss) 7790 s.Subsample = float64(s1.Subsample) 7791 s.WalsAlpha = float64(s1.WalsAlpha) 7792 return nil 7793} 7794 7795// TrainingRun: Information about a single training query run for the 7796// model. 7797type TrainingRun struct { 7798 // DataSplitResult: Data split result of the training run. Only set when 7799 // the input data is actually split. 7800 DataSplitResult *DataSplitResult `json:"dataSplitResult,omitempty"` 7801 7802 // EvaluationMetrics: The evaluation metrics over training/eval data 7803 // that were computed at the end of training. 7804 EvaluationMetrics *EvaluationMetrics `json:"evaluationMetrics,omitempty"` 7805 7806 // GlobalExplanations: Global explanations for important features of the 7807 // model. For multi-class models, there is one entry for each label 7808 // class. For other models, there is only one entry in the list. 7809 GlobalExplanations []*GlobalExplanation `json:"globalExplanations,omitempty"` 7810 7811 // Results: Output of each iteration run, results.size() <= 7812 // max_iterations. 7813 Results []*IterationResult `json:"results,omitempty"` 7814 7815 // StartTime: The start time of this training run. 7816 StartTime string `json:"startTime,omitempty"` 7817 7818 // TrainingOptions: Options that were used for this training run, 7819 // includes user specified and default options that were used. 7820 TrainingOptions *TrainingOptions `json:"trainingOptions,omitempty"` 7821 7822 // ForceSendFields is a list of field names (e.g. "DataSplitResult") to 7823 // unconditionally include in API requests. By default, fields with 7824 // empty values are omitted from API requests. However, any non-pointer, 7825 // non-interface field appearing in ForceSendFields will be sent to the 7826 // server regardless of whether the field is empty or not. This may be 7827 // used to include empty fields in Patch requests. 7828 ForceSendFields []string `json:"-"` 7829 7830 // NullFields is a list of field names (e.g. "DataSplitResult") to 7831 // include in API requests with the JSON null value. By default, fields 7832 // with empty values are omitted from API requests. However, any field 7833 // with an empty value appearing in NullFields will be sent to the 7834 // server as null. It is an error if a field in this list has a 7835 // non-empty value. This may be used to include null fields in Patch 7836 // requests. 7837 NullFields []string `json:"-"` 7838} 7839 7840func (s *TrainingRun) MarshalJSON() ([]byte, error) { 7841 type NoMethod TrainingRun 7842 raw := NoMethod(*s) 7843 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7844} 7845 7846type TransactionInfo struct { 7847 // TransactionId: [Output-only] // [Alpha] Id of the transaction. 7848 TransactionId string `json:"transactionId,omitempty"` 7849 7850 // ForceSendFields is a list of field names (e.g. "TransactionId") to 7851 // unconditionally include in API requests. By default, fields with 7852 // empty values are omitted from API requests. However, any non-pointer, 7853 // non-interface field appearing in ForceSendFields will be sent to the 7854 // server regardless of whether the field is empty or not. This may be 7855 // used to include empty fields in Patch requests. 7856 ForceSendFields []string `json:"-"` 7857 7858 // NullFields is a list of field names (e.g. "TransactionId") to include 7859 // in API requests with the JSON null value. By default, fields with 7860 // empty values are omitted from API requests. However, any field with 7861 // an empty value appearing in NullFields will be sent to the server as 7862 // null. It is an error if a field in this list has a non-empty value. 7863 // This may be used to include null fields in Patch requests. 7864 NullFields []string `json:"-"` 7865} 7866 7867func (s *TransactionInfo) MarshalJSON() ([]byte, error) { 7868 type NoMethod TransactionInfo 7869 raw := NoMethod(*s) 7870 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7871} 7872 7873// UserDefinedFunctionResource: This is used for defining User Defined 7874// Function (UDF) resources only when using legacy SQL. Users of 7875// Standard SQL should leverage either DDL (e.g. CREATE [TEMPORARY] 7876// FUNCTION ... ) or the Routines API to define UDF resources. For 7877// additional information on migrating, see: 7878// https://cloud.google.com/bigquery/docs/reference/standard-sql/migrating-from-legacy-sql#differences_in_user-defined_javascript_functions 7879type UserDefinedFunctionResource struct { 7880 // InlineCode: [Pick one] An inline resource that contains code for a 7881 // user-defined function (UDF). Providing a inline code resource is 7882 // equivalent to providing a URI for a file containing the same code. 7883 InlineCode string `json:"inlineCode,omitempty"` 7884 7885 // ResourceUri: [Pick one] A code resource to load from a Google Cloud 7886 // Storage URI (gs://bucket/path). 7887 ResourceUri string `json:"resourceUri,omitempty"` 7888 7889 // ForceSendFields is a list of field names (e.g. "InlineCode") to 7890 // unconditionally include in API requests. By default, fields with 7891 // empty values are omitted from API requests. However, any non-pointer, 7892 // non-interface field appearing in ForceSendFields will be sent to the 7893 // server regardless of whether the field is empty or not. This may be 7894 // used to include empty fields in Patch requests. 7895 ForceSendFields []string `json:"-"` 7896 7897 // NullFields is a list of field names (e.g. "InlineCode") to include in 7898 // API requests with the JSON null value. By default, fields with empty 7899 // values are omitted from API requests. However, any field with an 7900 // empty value appearing in NullFields will be sent to the server as 7901 // null. It is an error if a field in this list has a non-empty value. 7902 // This may be used to include null fields in Patch requests. 7903 NullFields []string `json:"-"` 7904} 7905 7906func (s *UserDefinedFunctionResource) MarshalJSON() ([]byte, error) { 7907 type NoMethod UserDefinedFunctionResource 7908 raw := NoMethod(*s) 7909 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7910} 7911 7912type ViewDefinition struct { 7913 // Query: [Required] A query that BigQuery executes when the view is 7914 // referenced. 7915 Query string `json:"query,omitempty"` 7916 7917 // UseLegacySql: Specifies whether to use BigQuery's legacy SQL for this 7918 // view. The default value is true. If set to false, the view will use 7919 // BigQuery's standard SQL: 7920 // https://cloud.google.com/bigquery/sql-reference/ Queries and views 7921 // that reference this view must use the same flag value. 7922 UseLegacySql bool `json:"useLegacySql,omitempty"` 7923 7924 // UserDefinedFunctionResources: Describes user-defined function 7925 // resources used in the query. 7926 UserDefinedFunctionResources []*UserDefinedFunctionResource `json:"userDefinedFunctionResources,omitempty"` 7927 7928 // ForceSendFields is a list of field names (e.g. "Query") to 7929 // unconditionally include in API requests. By default, fields with 7930 // empty values are omitted from API requests. However, any non-pointer, 7931 // non-interface field appearing in ForceSendFields will be sent to the 7932 // server regardless of whether the field is empty or not. This may be 7933 // used to include empty fields in Patch requests. 7934 ForceSendFields []string `json:"-"` 7935 7936 // NullFields is a list of field names (e.g. "Query") to include in API 7937 // requests with the JSON null value. By default, fields with empty 7938 // values are omitted from API requests. However, any field with an 7939 // empty value appearing in NullFields will be sent to the server as 7940 // null. It is an error if a field in this list has a non-empty value. 7941 // This may be used to include null fields in Patch requests. 7942 NullFields []string `json:"-"` 7943} 7944 7945func (s *ViewDefinition) MarshalJSON() ([]byte, error) { 7946 type NoMethod ViewDefinition 7947 raw := NoMethod(*s) 7948 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 7949} 7950 7951// method id "bigquery.datasets.delete": 7952 7953type DatasetsDeleteCall struct { 7954 s *Service 7955 projectId string 7956 datasetId string 7957 urlParams_ gensupport.URLParams 7958 ctx_ context.Context 7959 header_ http.Header 7960} 7961 7962// Delete: Deletes the dataset specified by the datasetId value. Before 7963// you can delete a dataset, you must delete all its tables, either 7964// manually or by specifying deleteContents. Immediately after deletion, 7965// you can create another dataset with the same name. 7966// 7967// - datasetId: Dataset ID of dataset being deleted. 7968// - projectId: Project ID of the dataset being deleted. 7969func (r *DatasetsService) Delete(projectId string, datasetId string) *DatasetsDeleteCall { 7970 c := &DatasetsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7971 c.projectId = projectId 7972 c.datasetId = datasetId 7973 return c 7974} 7975 7976// DeleteContents sets the optional parameter "deleteContents": If True, 7977// delete all the tables in the dataset. If False and the dataset 7978// contains tables, the request will fail. Default is False 7979func (c *DatasetsDeleteCall) DeleteContents(deleteContents bool) *DatasetsDeleteCall { 7980 c.urlParams_.Set("deleteContents", fmt.Sprint(deleteContents)) 7981 return c 7982} 7983 7984// Fields allows partial responses to be retrieved. See 7985// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7986// for more information. 7987func (c *DatasetsDeleteCall) Fields(s ...googleapi.Field) *DatasetsDeleteCall { 7988 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7989 return c 7990} 7991 7992// Context sets the context to be used in this call's Do method. Any 7993// pending HTTP request will be aborted if the provided context is 7994// canceled. 7995func (c *DatasetsDeleteCall) Context(ctx context.Context) *DatasetsDeleteCall { 7996 c.ctx_ = ctx 7997 return c 7998} 7999 8000// Header returns an http.Header that can be modified by the caller to 8001// add HTTP headers to the request. 8002func (c *DatasetsDeleteCall) Header() http.Header { 8003 if c.header_ == nil { 8004 c.header_ = make(http.Header) 8005 } 8006 return c.header_ 8007} 8008 8009func (c *DatasetsDeleteCall) doRequest(alt string) (*http.Response, error) { 8010 reqHeaders := make(http.Header) 8011 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8012 for k, v := range c.header_ { 8013 reqHeaders[k] = v 8014 } 8015 reqHeaders.Set("User-Agent", c.s.userAgent()) 8016 var body io.Reader = nil 8017 c.urlParams_.Set("alt", alt) 8018 c.urlParams_.Set("prettyPrint", "false") 8019 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}") 8020 urls += "?" + c.urlParams_.Encode() 8021 req, err := http.NewRequest("DELETE", urls, body) 8022 if err != nil { 8023 return nil, err 8024 } 8025 req.Header = reqHeaders 8026 googleapi.Expand(req.URL, map[string]string{ 8027 "projectId": c.projectId, 8028 "datasetId": c.datasetId, 8029 }) 8030 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8031} 8032 8033// Do executes the "bigquery.datasets.delete" call. 8034func (c *DatasetsDeleteCall) Do(opts ...googleapi.CallOption) error { 8035 gensupport.SetOptions(c.urlParams_, opts...) 8036 res, err := c.doRequest("json") 8037 if err != nil { 8038 return err 8039 } 8040 defer googleapi.CloseBody(res) 8041 if err := googleapi.CheckResponse(res); err != nil { 8042 return err 8043 } 8044 return nil 8045 // { 8046 // "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.", 8047 // "httpMethod": "DELETE", 8048 // "id": "bigquery.datasets.delete", 8049 // "parameterOrder": [ 8050 // "projectId", 8051 // "datasetId" 8052 // ], 8053 // "parameters": { 8054 // "datasetId": { 8055 // "description": "Dataset ID of dataset being deleted", 8056 // "location": "path", 8057 // "required": true, 8058 // "type": "string" 8059 // }, 8060 // "deleteContents": { 8061 // "description": "If True, delete all the tables in the dataset. If False and the dataset contains tables, the request will fail. Default is False", 8062 // "location": "query", 8063 // "type": "boolean" 8064 // }, 8065 // "projectId": { 8066 // "description": "Project ID of the dataset being deleted", 8067 // "location": "path", 8068 // "required": true, 8069 // "type": "string" 8070 // } 8071 // }, 8072 // "path": "projects/{projectId}/datasets/{datasetId}", 8073 // "scopes": [ 8074 // "https://www.googleapis.com/auth/bigquery", 8075 // "https://www.googleapis.com/auth/cloud-platform" 8076 // ] 8077 // } 8078 8079} 8080 8081// method id "bigquery.datasets.get": 8082 8083type DatasetsGetCall struct { 8084 s *Service 8085 projectId string 8086 datasetId string 8087 urlParams_ gensupport.URLParams 8088 ifNoneMatch_ string 8089 ctx_ context.Context 8090 header_ http.Header 8091} 8092 8093// Get: Returns the dataset specified by datasetID. 8094// 8095// - datasetId: Dataset ID of the requested dataset. 8096// - projectId: Project ID of the requested dataset. 8097func (r *DatasetsService) Get(projectId string, datasetId string) *DatasetsGetCall { 8098 c := &DatasetsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8099 c.projectId = projectId 8100 c.datasetId = datasetId 8101 return c 8102} 8103 8104// Fields allows partial responses to be retrieved. See 8105// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8106// for more information. 8107func (c *DatasetsGetCall) Fields(s ...googleapi.Field) *DatasetsGetCall { 8108 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8109 return c 8110} 8111 8112// IfNoneMatch sets the optional parameter which makes the operation 8113// fail if the object's ETag matches the given value. This is useful for 8114// getting updates only after the object has changed since the last 8115// request. Use googleapi.IsNotModified to check whether the response 8116// error from Do is the result of In-None-Match. 8117func (c *DatasetsGetCall) IfNoneMatch(entityTag string) *DatasetsGetCall { 8118 c.ifNoneMatch_ = entityTag 8119 return c 8120} 8121 8122// Context sets the context to be used in this call's Do method. Any 8123// pending HTTP request will be aborted if the provided context is 8124// canceled. 8125func (c *DatasetsGetCall) Context(ctx context.Context) *DatasetsGetCall { 8126 c.ctx_ = ctx 8127 return c 8128} 8129 8130// Header returns an http.Header that can be modified by the caller to 8131// add HTTP headers to the request. 8132func (c *DatasetsGetCall) Header() http.Header { 8133 if c.header_ == nil { 8134 c.header_ = make(http.Header) 8135 } 8136 return c.header_ 8137} 8138 8139func (c *DatasetsGetCall) doRequest(alt string) (*http.Response, error) { 8140 reqHeaders := make(http.Header) 8141 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8142 for k, v := range c.header_ { 8143 reqHeaders[k] = v 8144 } 8145 reqHeaders.Set("User-Agent", c.s.userAgent()) 8146 if c.ifNoneMatch_ != "" { 8147 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8148 } 8149 var body io.Reader = nil 8150 c.urlParams_.Set("alt", alt) 8151 c.urlParams_.Set("prettyPrint", "false") 8152 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}") 8153 urls += "?" + c.urlParams_.Encode() 8154 req, err := http.NewRequest("GET", urls, body) 8155 if err != nil { 8156 return nil, err 8157 } 8158 req.Header = reqHeaders 8159 googleapi.Expand(req.URL, map[string]string{ 8160 "projectId": c.projectId, 8161 "datasetId": c.datasetId, 8162 }) 8163 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8164} 8165 8166// Do executes the "bigquery.datasets.get" call. 8167// Exactly one of *Dataset or error will be non-nil. Any non-2xx status 8168// code is an error. Response headers are in either 8169// *Dataset.ServerResponse.Header or (if a response was returned at all) 8170// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8171// check whether the returned error was because http.StatusNotModified 8172// was returned. 8173func (c *DatasetsGetCall) Do(opts ...googleapi.CallOption) (*Dataset, error) { 8174 gensupport.SetOptions(c.urlParams_, opts...) 8175 res, err := c.doRequest("json") 8176 if res != nil && res.StatusCode == http.StatusNotModified { 8177 if res.Body != nil { 8178 res.Body.Close() 8179 } 8180 return nil, &googleapi.Error{ 8181 Code: res.StatusCode, 8182 Header: res.Header, 8183 } 8184 } 8185 if err != nil { 8186 return nil, err 8187 } 8188 defer googleapi.CloseBody(res) 8189 if err := googleapi.CheckResponse(res); err != nil { 8190 return nil, err 8191 } 8192 ret := &Dataset{ 8193 ServerResponse: googleapi.ServerResponse{ 8194 Header: res.Header, 8195 HTTPStatusCode: res.StatusCode, 8196 }, 8197 } 8198 target := &ret 8199 if err := gensupport.DecodeResponse(target, res); err != nil { 8200 return nil, err 8201 } 8202 return ret, nil 8203 // { 8204 // "description": "Returns the dataset specified by datasetID.", 8205 // "httpMethod": "GET", 8206 // "id": "bigquery.datasets.get", 8207 // "parameterOrder": [ 8208 // "projectId", 8209 // "datasetId" 8210 // ], 8211 // "parameters": { 8212 // "datasetId": { 8213 // "description": "Dataset ID of the requested dataset", 8214 // "location": "path", 8215 // "required": true, 8216 // "type": "string" 8217 // }, 8218 // "projectId": { 8219 // "description": "Project ID of the requested dataset", 8220 // "location": "path", 8221 // "required": true, 8222 // "type": "string" 8223 // } 8224 // }, 8225 // "path": "projects/{projectId}/datasets/{datasetId}", 8226 // "response": { 8227 // "$ref": "Dataset" 8228 // }, 8229 // "scopes": [ 8230 // "https://www.googleapis.com/auth/bigquery", 8231 // "https://www.googleapis.com/auth/cloud-platform", 8232 // "https://www.googleapis.com/auth/cloud-platform.read-only" 8233 // ] 8234 // } 8235 8236} 8237 8238// method id "bigquery.datasets.insert": 8239 8240type DatasetsInsertCall struct { 8241 s *Service 8242 projectId string 8243 dataset *Dataset 8244 urlParams_ gensupport.URLParams 8245 ctx_ context.Context 8246 header_ http.Header 8247} 8248 8249// Insert: Creates a new empty dataset. 8250// 8251// - projectId: Project ID of the new dataset. 8252func (r *DatasetsService) Insert(projectId string, dataset *Dataset) *DatasetsInsertCall { 8253 c := &DatasetsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8254 c.projectId = projectId 8255 c.dataset = dataset 8256 return c 8257} 8258 8259// Fields allows partial responses to be retrieved. See 8260// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8261// for more information. 8262func (c *DatasetsInsertCall) Fields(s ...googleapi.Field) *DatasetsInsertCall { 8263 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8264 return c 8265} 8266 8267// Context sets the context to be used in this call's Do method. Any 8268// pending HTTP request will be aborted if the provided context is 8269// canceled. 8270func (c *DatasetsInsertCall) Context(ctx context.Context) *DatasetsInsertCall { 8271 c.ctx_ = ctx 8272 return c 8273} 8274 8275// Header returns an http.Header that can be modified by the caller to 8276// add HTTP headers to the request. 8277func (c *DatasetsInsertCall) Header() http.Header { 8278 if c.header_ == nil { 8279 c.header_ = make(http.Header) 8280 } 8281 return c.header_ 8282} 8283 8284func (c *DatasetsInsertCall) doRequest(alt string) (*http.Response, error) { 8285 reqHeaders := make(http.Header) 8286 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8287 for k, v := range c.header_ { 8288 reqHeaders[k] = v 8289 } 8290 reqHeaders.Set("User-Agent", c.s.userAgent()) 8291 var body io.Reader = nil 8292 body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset) 8293 if err != nil { 8294 return nil, err 8295 } 8296 reqHeaders.Set("Content-Type", "application/json") 8297 c.urlParams_.Set("alt", alt) 8298 c.urlParams_.Set("prettyPrint", "false") 8299 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets") 8300 urls += "?" + c.urlParams_.Encode() 8301 req, err := http.NewRequest("POST", urls, body) 8302 if err != nil { 8303 return nil, err 8304 } 8305 req.Header = reqHeaders 8306 googleapi.Expand(req.URL, map[string]string{ 8307 "projectId": c.projectId, 8308 }) 8309 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8310} 8311 8312// Do executes the "bigquery.datasets.insert" call. 8313// Exactly one of *Dataset or error will be non-nil. Any non-2xx status 8314// code is an error. Response headers are in either 8315// *Dataset.ServerResponse.Header or (if a response was returned at all) 8316// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8317// check whether the returned error was because http.StatusNotModified 8318// was returned. 8319func (c *DatasetsInsertCall) Do(opts ...googleapi.CallOption) (*Dataset, error) { 8320 gensupport.SetOptions(c.urlParams_, opts...) 8321 res, err := c.doRequest("json") 8322 if res != nil && res.StatusCode == http.StatusNotModified { 8323 if res.Body != nil { 8324 res.Body.Close() 8325 } 8326 return nil, &googleapi.Error{ 8327 Code: res.StatusCode, 8328 Header: res.Header, 8329 } 8330 } 8331 if err != nil { 8332 return nil, err 8333 } 8334 defer googleapi.CloseBody(res) 8335 if err := googleapi.CheckResponse(res); err != nil { 8336 return nil, err 8337 } 8338 ret := &Dataset{ 8339 ServerResponse: googleapi.ServerResponse{ 8340 Header: res.Header, 8341 HTTPStatusCode: res.StatusCode, 8342 }, 8343 } 8344 target := &ret 8345 if err := gensupport.DecodeResponse(target, res); err != nil { 8346 return nil, err 8347 } 8348 return ret, nil 8349 // { 8350 // "description": "Creates a new empty dataset.", 8351 // "httpMethod": "POST", 8352 // "id": "bigquery.datasets.insert", 8353 // "parameterOrder": [ 8354 // "projectId" 8355 // ], 8356 // "parameters": { 8357 // "projectId": { 8358 // "description": "Project ID of the new dataset", 8359 // "location": "path", 8360 // "required": true, 8361 // "type": "string" 8362 // } 8363 // }, 8364 // "path": "projects/{projectId}/datasets", 8365 // "request": { 8366 // "$ref": "Dataset" 8367 // }, 8368 // "response": { 8369 // "$ref": "Dataset" 8370 // }, 8371 // "scopes": [ 8372 // "https://www.googleapis.com/auth/bigquery", 8373 // "https://www.googleapis.com/auth/cloud-platform" 8374 // ] 8375 // } 8376 8377} 8378 8379// method id "bigquery.datasets.list": 8380 8381type DatasetsListCall struct { 8382 s *Service 8383 projectId string 8384 urlParams_ gensupport.URLParams 8385 ifNoneMatch_ string 8386 ctx_ context.Context 8387 header_ http.Header 8388} 8389 8390// List: Lists all datasets in the specified project to which you have 8391// been granted the READER dataset role. 8392// 8393// - projectId: Project ID of the datasets to be listed. 8394func (r *DatasetsService) List(projectId string) *DatasetsListCall { 8395 c := &DatasetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8396 c.projectId = projectId 8397 return c 8398} 8399 8400// All sets the optional parameter "all": Whether to list all datasets, 8401// including hidden ones 8402func (c *DatasetsListCall) All(all bool) *DatasetsListCall { 8403 c.urlParams_.Set("all", fmt.Sprint(all)) 8404 return c 8405} 8406 8407// Filter sets the optional parameter "filter": An expression for 8408// filtering the results of the request by label. The syntax is 8409// "labels.<name>[:<value>]". Multiple filters can be ANDed together by 8410// connecting with a space. Example: "labels.department:receiving 8411// labels.active". See Filtering datasets using labels for details. 8412func (c *DatasetsListCall) Filter(filter string) *DatasetsListCall { 8413 c.urlParams_.Set("filter", filter) 8414 return c 8415} 8416 8417// MaxResults sets the optional parameter "maxResults": The maximum 8418// number of results to return 8419func (c *DatasetsListCall) MaxResults(maxResults int64) *DatasetsListCall { 8420 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 8421 return c 8422} 8423 8424// PageToken sets the optional parameter "pageToken": Page token, 8425// returned by a previous call, to request the next page of results 8426func (c *DatasetsListCall) PageToken(pageToken string) *DatasetsListCall { 8427 c.urlParams_.Set("pageToken", pageToken) 8428 return c 8429} 8430 8431// Fields allows partial responses to be retrieved. See 8432// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8433// for more information. 8434func (c *DatasetsListCall) Fields(s ...googleapi.Field) *DatasetsListCall { 8435 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8436 return c 8437} 8438 8439// IfNoneMatch sets the optional parameter which makes the operation 8440// fail if the object's ETag matches the given value. This is useful for 8441// getting updates only after the object has changed since the last 8442// request. Use googleapi.IsNotModified to check whether the response 8443// error from Do is the result of In-None-Match. 8444func (c *DatasetsListCall) IfNoneMatch(entityTag string) *DatasetsListCall { 8445 c.ifNoneMatch_ = entityTag 8446 return c 8447} 8448 8449// Context sets the context to be used in this call's Do method. Any 8450// pending HTTP request will be aborted if the provided context is 8451// canceled. 8452func (c *DatasetsListCall) Context(ctx context.Context) *DatasetsListCall { 8453 c.ctx_ = ctx 8454 return c 8455} 8456 8457// Header returns an http.Header that can be modified by the caller to 8458// add HTTP headers to the request. 8459func (c *DatasetsListCall) Header() http.Header { 8460 if c.header_ == nil { 8461 c.header_ = make(http.Header) 8462 } 8463 return c.header_ 8464} 8465 8466func (c *DatasetsListCall) doRequest(alt string) (*http.Response, error) { 8467 reqHeaders := make(http.Header) 8468 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8469 for k, v := range c.header_ { 8470 reqHeaders[k] = v 8471 } 8472 reqHeaders.Set("User-Agent", c.s.userAgent()) 8473 if c.ifNoneMatch_ != "" { 8474 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8475 } 8476 var body io.Reader = nil 8477 c.urlParams_.Set("alt", alt) 8478 c.urlParams_.Set("prettyPrint", "false") 8479 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets") 8480 urls += "?" + c.urlParams_.Encode() 8481 req, err := http.NewRequest("GET", urls, body) 8482 if err != nil { 8483 return nil, err 8484 } 8485 req.Header = reqHeaders 8486 googleapi.Expand(req.URL, map[string]string{ 8487 "projectId": c.projectId, 8488 }) 8489 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8490} 8491 8492// Do executes the "bigquery.datasets.list" call. 8493// Exactly one of *DatasetList or error will be non-nil. Any non-2xx 8494// status code is an error. Response headers are in either 8495// *DatasetList.ServerResponse.Header or (if a response was returned at 8496// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 8497// to check whether the returned error was because 8498// http.StatusNotModified was returned. 8499func (c *DatasetsListCall) Do(opts ...googleapi.CallOption) (*DatasetList, error) { 8500 gensupport.SetOptions(c.urlParams_, opts...) 8501 res, err := c.doRequest("json") 8502 if res != nil && res.StatusCode == http.StatusNotModified { 8503 if res.Body != nil { 8504 res.Body.Close() 8505 } 8506 return nil, &googleapi.Error{ 8507 Code: res.StatusCode, 8508 Header: res.Header, 8509 } 8510 } 8511 if err != nil { 8512 return nil, err 8513 } 8514 defer googleapi.CloseBody(res) 8515 if err := googleapi.CheckResponse(res); err != nil { 8516 return nil, err 8517 } 8518 ret := &DatasetList{ 8519 ServerResponse: googleapi.ServerResponse{ 8520 Header: res.Header, 8521 HTTPStatusCode: res.StatusCode, 8522 }, 8523 } 8524 target := &ret 8525 if err := gensupport.DecodeResponse(target, res); err != nil { 8526 return nil, err 8527 } 8528 return ret, nil 8529 // { 8530 // "description": "Lists all datasets in the specified project to which you have been granted the READER dataset role.", 8531 // "httpMethod": "GET", 8532 // "id": "bigquery.datasets.list", 8533 // "parameterOrder": [ 8534 // "projectId" 8535 // ], 8536 // "parameters": { 8537 // "all": { 8538 // "description": "Whether to list all datasets, including hidden ones", 8539 // "location": "query", 8540 // "type": "boolean" 8541 // }, 8542 // "filter": { 8543 // "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.", 8544 // "location": "query", 8545 // "type": "string" 8546 // }, 8547 // "maxResults": { 8548 // "description": "The maximum number of results to return", 8549 // "format": "uint32", 8550 // "location": "query", 8551 // "type": "integer" 8552 // }, 8553 // "pageToken": { 8554 // "description": "Page token, returned by a previous call, to request the next page of results", 8555 // "location": "query", 8556 // "type": "string" 8557 // }, 8558 // "projectId": { 8559 // "description": "Project ID of the datasets to be listed", 8560 // "location": "path", 8561 // "required": true, 8562 // "type": "string" 8563 // } 8564 // }, 8565 // "path": "projects/{projectId}/datasets", 8566 // "response": { 8567 // "$ref": "DatasetList" 8568 // }, 8569 // "scopes": [ 8570 // "https://www.googleapis.com/auth/bigquery", 8571 // "https://www.googleapis.com/auth/cloud-platform", 8572 // "https://www.googleapis.com/auth/cloud-platform.read-only" 8573 // ] 8574 // } 8575 8576} 8577 8578// Pages invokes f for each page of results. 8579// A non-nil error returned from f will halt the iteration. 8580// The provided context supersedes any context provided to the Context method. 8581func (c *DatasetsListCall) Pages(ctx context.Context, f func(*DatasetList) error) error { 8582 c.ctx_ = ctx 8583 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 8584 for { 8585 x, err := c.Do() 8586 if err != nil { 8587 return err 8588 } 8589 if err := f(x); err != nil { 8590 return err 8591 } 8592 if x.NextPageToken == "" { 8593 return nil 8594 } 8595 c.PageToken(x.NextPageToken) 8596 } 8597} 8598 8599// method id "bigquery.datasets.patch": 8600 8601type DatasetsPatchCall struct { 8602 s *Service 8603 projectId string 8604 datasetId string 8605 dataset *Dataset 8606 urlParams_ gensupport.URLParams 8607 ctx_ context.Context 8608 header_ http.Header 8609} 8610 8611// Patch: Updates information in an existing dataset. The update method 8612// replaces the entire dataset resource, whereas the patch method only 8613// replaces fields that are provided in the submitted dataset resource. 8614// This method supports patch semantics. 8615// 8616// - datasetId: Dataset ID of the dataset being updated. 8617// - projectId: Project ID of the dataset being updated. 8618func (r *DatasetsService) Patch(projectId string, datasetId string, dataset *Dataset) *DatasetsPatchCall { 8619 c := &DatasetsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8620 c.projectId = projectId 8621 c.datasetId = datasetId 8622 c.dataset = dataset 8623 return c 8624} 8625 8626// Fields allows partial responses to be retrieved. See 8627// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8628// for more information. 8629func (c *DatasetsPatchCall) Fields(s ...googleapi.Field) *DatasetsPatchCall { 8630 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8631 return c 8632} 8633 8634// Context sets the context to be used in this call's Do method. Any 8635// pending HTTP request will be aborted if the provided context is 8636// canceled. 8637func (c *DatasetsPatchCall) Context(ctx context.Context) *DatasetsPatchCall { 8638 c.ctx_ = ctx 8639 return c 8640} 8641 8642// Header returns an http.Header that can be modified by the caller to 8643// add HTTP headers to the request. 8644func (c *DatasetsPatchCall) Header() http.Header { 8645 if c.header_ == nil { 8646 c.header_ = make(http.Header) 8647 } 8648 return c.header_ 8649} 8650 8651func (c *DatasetsPatchCall) doRequest(alt string) (*http.Response, error) { 8652 reqHeaders := make(http.Header) 8653 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8654 for k, v := range c.header_ { 8655 reqHeaders[k] = v 8656 } 8657 reqHeaders.Set("User-Agent", c.s.userAgent()) 8658 var body io.Reader = nil 8659 body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset) 8660 if err != nil { 8661 return nil, err 8662 } 8663 reqHeaders.Set("Content-Type", "application/json") 8664 c.urlParams_.Set("alt", alt) 8665 c.urlParams_.Set("prettyPrint", "false") 8666 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}") 8667 urls += "?" + c.urlParams_.Encode() 8668 req, err := http.NewRequest("PATCH", urls, body) 8669 if err != nil { 8670 return nil, err 8671 } 8672 req.Header = reqHeaders 8673 googleapi.Expand(req.URL, map[string]string{ 8674 "projectId": c.projectId, 8675 "datasetId": c.datasetId, 8676 }) 8677 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8678} 8679 8680// Do executes the "bigquery.datasets.patch" call. 8681// Exactly one of *Dataset or error will be non-nil. Any non-2xx status 8682// code is an error. Response headers are in either 8683// *Dataset.ServerResponse.Header or (if a response was returned at all) 8684// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8685// check whether the returned error was because http.StatusNotModified 8686// was returned. 8687func (c *DatasetsPatchCall) Do(opts ...googleapi.CallOption) (*Dataset, error) { 8688 gensupport.SetOptions(c.urlParams_, opts...) 8689 res, err := c.doRequest("json") 8690 if res != nil && res.StatusCode == http.StatusNotModified { 8691 if res.Body != nil { 8692 res.Body.Close() 8693 } 8694 return nil, &googleapi.Error{ 8695 Code: res.StatusCode, 8696 Header: res.Header, 8697 } 8698 } 8699 if err != nil { 8700 return nil, err 8701 } 8702 defer googleapi.CloseBody(res) 8703 if err := googleapi.CheckResponse(res); err != nil { 8704 return nil, err 8705 } 8706 ret := &Dataset{ 8707 ServerResponse: googleapi.ServerResponse{ 8708 Header: res.Header, 8709 HTTPStatusCode: res.StatusCode, 8710 }, 8711 } 8712 target := &ret 8713 if err := gensupport.DecodeResponse(target, res); err != nil { 8714 return nil, err 8715 } 8716 return ret, nil 8717 // { 8718 // "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.", 8719 // "httpMethod": "PATCH", 8720 // "id": "bigquery.datasets.patch", 8721 // "parameterOrder": [ 8722 // "projectId", 8723 // "datasetId" 8724 // ], 8725 // "parameters": { 8726 // "datasetId": { 8727 // "description": "Dataset ID of the dataset being updated", 8728 // "location": "path", 8729 // "required": true, 8730 // "type": "string" 8731 // }, 8732 // "projectId": { 8733 // "description": "Project ID of the dataset being updated", 8734 // "location": "path", 8735 // "required": true, 8736 // "type": "string" 8737 // } 8738 // }, 8739 // "path": "projects/{projectId}/datasets/{datasetId}", 8740 // "request": { 8741 // "$ref": "Dataset" 8742 // }, 8743 // "response": { 8744 // "$ref": "Dataset" 8745 // }, 8746 // "scopes": [ 8747 // "https://www.googleapis.com/auth/bigquery", 8748 // "https://www.googleapis.com/auth/cloud-platform" 8749 // ] 8750 // } 8751 8752} 8753 8754// method id "bigquery.datasets.update": 8755 8756type DatasetsUpdateCall struct { 8757 s *Service 8758 projectId string 8759 datasetId string 8760 dataset *Dataset 8761 urlParams_ gensupport.URLParams 8762 ctx_ context.Context 8763 header_ http.Header 8764} 8765 8766// Update: Updates information in an existing dataset. The update method 8767// replaces the entire dataset resource, whereas the patch method only 8768// replaces fields that are provided in the submitted dataset resource. 8769// 8770// - datasetId: Dataset ID of the dataset being updated. 8771// - projectId: Project ID of the dataset being updated. 8772func (r *DatasetsService) Update(projectId string, datasetId string, dataset *Dataset) *DatasetsUpdateCall { 8773 c := &DatasetsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8774 c.projectId = projectId 8775 c.datasetId = datasetId 8776 c.dataset = dataset 8777 return c 8778} 8779 8780// Fields allows partial responses to be retrieved. See 8781// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8782// for more information. 8783func (c *DatasetsUpdateCall) Fields(s ...googleapi.Field) *DatasetsUpdateCall { 8784 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 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 *DatasetsUpdateCall) Context(ctx context.Context) *DatasetsUpdateCall { 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 *DatasetsUpdateCall) Header() http.Header { 8799 if c.header_ == nil { 8800 c.header_ = make(http.Header) 8801 } 8802 return c.header_ 8803} 8804 8805func (c *DatasetsUpdateCall) doRequest(alt string) (*http.Response, error) { 8806 reqHeaders := make(http.Header) 8807 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8808 for k, v := range c.header_ { 8809 reqHeaders[k] = v 8810 } 8811 reqHeaders.Set("User-Agent", c.s.userAgent()) 8812 var body io.Reader = nil 8813 body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset) 8814 if err != nil { 8815 return nil, err 8816 } 8817 reqHeaders.Set("Content-Type", "application/json") 8818 c.urlParams_.Set("alt", alt) 8819 c.urlParams_.Set("prettyPrint", "false") 8820 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}") 8821 urls += "?" + c.urlParams_.Encode() 8822 req, err := http.NewRequest("PUT", urls, body) 8823 if err != nil { 8824 return nil, err 8825 } 8826 req.Header = reqHeaders 8827 googleapi.Expand(req.URL, map[string]string{ 8828 "projectId": c.projectId, 8829 "datasetId": c.datasetId, 8830 }) 8831 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8832} 8833 8834// Do executes the "bigquery.datasets.update" call. 8835// Exactly one of *Dataset or error will be non-nil. Any non-2xx status 8836// code is an error. Response headers are in either 8837// *Dataset.ServerResponse.Header or (if a response was returned at all) 8838// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8839// check whether the returned error was because http.StatusNotModified 8840// was returned. 8841func (c *DatasetsUpdateCall) Do(opts ...googleapi.CallOption) (*Dataset, error) { 8842 gensupport.SetOptions(c.urlParams_, opts...) 8843 res, err := c.doRequest("json") 8844 if res != nil && res.StatusCode == http.StatusNotModified { 8845 if res.Body != nil { 8846 res.Body.Close() 8847 } 8848 return nil, &googleapi.Error{ 8849 Code: res.StatusCode, 8850 Header: res.Header, 8851 } 8852 } 8853 if err != nil { 8854 return nil, err 8855 } 8856 defer googleapi.CloseBody(res) 8857 if err := googleapi.CheckResponse(res); err != nil { 8858 return nil, err 8859 } 8860 ret := &Dataset{ 8861 ServerResponse: googleapi.ServerResponse{ 8862 Header: res.Header, 8863 HTTPStatusCode: res.StatusCode, 8864 }, 8865 } 8866 target := &ret 8867 if err := gensupport.DecodeResponse(target, res); err != nil { 8868 return nil, err 8869 } 8870 return ret, nil 8871 // { 8872 // "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.", 8873 // "httpMethod": "PUT", 8874 // "id": "bigquery.datasets.update", 8875 // "parameterOrder": [ 8876 // "projectId", 8877 // "datasetId" 8878 // ], 8879 // "parameters": { 8880 // "datasetId": { 8881 // "description": "Dataset ID of the dataset being updated", 8882 // "location": "path", 8883 // "required": true, 8884 // "type": "string" 8885 // }, 8886 // "projectId": { 8887 // "description": "Project ID of the dataset being updated", 8888 // "location": "path", 8889 // "required": true, 8890 // "type": "string" 8891 // } 8892 // }, 8893 // "path": "projects/{projectId}/datasets/{datasetId}", 8894 // "request": { 8895 // "$ref": "Dataset" 8896 // }, 8897 // "response": { 8898 // "$ref": "Dataset" 8899 // }, 8900 // "scopes": [ 8901 // "https://www.googleapis.com/auth/bigquery", 8902 // "https://www.googleapis.com/auth/cloud-platform" 8903 // ] 8904 // } 8905 8906} 8907 8908// method id "bigquery.jobs.cancel": 8909 8910type JobsCancelCall struct { 8911 s *Service 8912 projectId string 8913 jobId string 8914 urlParams_ gensupport.URLParams 8915 ctx_ context.Context 8916 header_ http.Header 8917} 8918 8919// Cancel: Requests that a job be cancelled. This call will return 8920// immediately, and the client will need to poll for the job status to 8921// see if the cancel completed successfully. Cancelled jobs may still 8922// incur costs. 8923// 8924// - jobId: [Required] Job ID of the job to cancel. 8925// - projectId: [Required] Project ID of the job to cancel. 8926func (r *JobsService) Cancel(projectId string, jobId string) *JobsCancelCall { 8927 c := &JobsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8928 c.projectId = projectId 8929 c.jobId = jobId 8930 return c 8931} 8932 8933// Location sets the optional parameter "location": The geographic 8934// location of the job. Required except for US and EU. See details at 8935// https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 8936func (c *JobsCancelCall) Location(location string) *JobsCancelCall { 8937 c.urlParams_.Set("location", location) 8938 return c 8939} 8940 8941// Fields allows partial responses to be retrieved. See 8942// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8943// for more information. 8944func (c *JobsCancelCall) Fields(s ...googleapi.Field) *JobsCancelCall { 8945 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8946 return c 8947} 8948 8949// Context sets the context to be used in this call's Do method. Any 8950// pending HTTP request will be aborted if the provided context is 8951// canceled. 8952func (c *JobsCancelCall) Context(ctx context.Context) *JobsCancelCall { 8953 c.ctx_ = ctx 8954 return c 8955} 8956 8957// Header returns an http.Header that can be modified by the caller to 8958// add HTTP headers to the request. 8959func (c *JobsCancelCall) Header() http.Header { 8960 if c.header_ == nil { 8961 c.header_ = make(http.Header) 8962 } 8963 return c.header_ 8964} 8965 8966func (c *JobsCancelCall) doRequest(alt string) (*http.Response, error) { 8967 reqHeaders := make(http.Header) 8968 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 8969 for k, v := range c.header_ { 8970 reqHeaders[k] = v 8971 } 8972 reqHeaders.Set("User-Agent", c.s.userAgent()) 8973 var body io.Reader = nil 8974 c.urlParams_.Set("alt", alt) 8975 c.urlParams_.Set("prettyPrint", "false") 8976 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/jobs/{jobId}/cancel") 8977 urls += "?" + c.urlParams_.Encode() 8978 req, err := http.NewRequest("POST", urls, body) 8979 if err != nil { 8980 return nil, err 8981 } 8982 req.Header = reqHeaders 8983 googleapi.Expand(req.URL, map[string]string{ 8984 "projectId": c.projectId, 8985 "jobId": c.jobId, 8986 }) 8987 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8988} 8989 8990// Do executes the "bigquery.jobs.cancel" call. 8991// Exactly one of *JobCancelResponse or error will be non-nil. Any 8992// non-2xx status code is an error. Response headers are in either 8993// *JobCancelResponse.ServerResponse.Header or (if a response was 8994// returned at all) in error.(*googleapi.Error).Header. Use 8995// googleapi.IsNotModified to check whether the returned error was 8996// because http.StatusNotModified was returned. 8997func (c *JobsCancelCall) Do(opts ...googleapi.CallOption) (*JobCancelResponse, error) { 8998 gensupport.SetOptions(c.urlParams_, opts...) 8999 res, err := c.doRequest("json") 9000 if res != nil && res.StatusCode == http.StatusNotModified { 9001 if res.Body != nil { 9002 res.Body.Close() 9003 } 9004 return nil, &googleapi.Error{ 9005 Code: res.StatusCode, 9006 Header: res.Header, 9007 } 9008 } 9009 if err != nil { 9010 return nil, err 9011 } 9012 defer googleapi.CloseBody(res) 9013 if err := googleapi.CheckResponse(res); err != nil { 9014 return nil, err 9015 } 9016 ret := &JobCancelResponse{ 9017 ServerResponse: googleapi.ServerResponse{ 9018 Header: res.Header, 9019 HTTPStatusCode: res.StatusCode, 9020 }, 9021 } 9022 target := &ret 9023 if err := gensupport.DecodeResponse(target, res); err != nil { 9024 return nil, err 9025 } 9026 return ret, nil 9027 // { 9028 // "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.", 9029 // "httpMethod": "POST", 9030 // "id": "bigquery.jobs.cancel", 9031 // "parameterOrder": [ 9032 // "projectId", 9033 // "jobId" 9034 // ], 9035 // "parameters": { 9036 // "jobId": { 9037 // "description": "[Required] Job ID of the job to cancel", 9038 // "location": "path", 9039 // "required": true, 9040 // "type": "string" 9041 // }, 9042 // "location": { 9043 // "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.", 9044 // "location": "query", 9045 // "type": "string" 9046 // }, 9047 // "projectId": { 9048 // "description": "[Required] Project ID of the job to cancel", 9049 // "location": "path", 9050 // "required": true, 9051 // "type": "string" 9052 // } 9053 // }, 9054 // "path": "projects/{projectId}/jobs/{jobId}/cancel", 9055 // "response": { 9056 // "$ref": "JobCancelResponse" 9057 // }, 9058 // "scopes": [ 9059 // "https://www.googleapis.com/auth/bigquery", 9060 // "https://www.googleapis.com/auth/cloud-platform" 9061 // ] 9062 // } 9063 9064} 9065 9066// method id "bigquery.jobs.delete": 9067 9068type JobsDeleteCall struct { 9069 s *Service 9070 projectId string 9071 jobId string 9072 urlParams_ gensupport.URLParams 9073 ctx_ context.Context 9074 header_ http.Header 9075} 9076 9077// Delete: Requests that a job is deleted. This call will return when 9078// the job is deleted. This method is available in limited preview. 9079// 9080// - jobId: Job ID of the job to be deleted. If this is a parent job 9081// which has child jobs, all child jobs will be deleted as well. 9082// Deletion of child jobs directly is not allowed. 9083// - projectId: Project ID of the job to be deleted. 9084func (r *JobsService) Delete(projectId string, jobId string) *JobsDeleteCall { 9085 c := &JobsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9086 c.projectId = projectId 9087 c.jobId = jobId 9088 return c 9089} 9090 9091// Location sets the optional parameter "location": The geographic 9092// location of the job. Required. See details at: 9093// https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 9094func (c *JobsDeleteCall) Location(location string) *JobsDeleteCall { 9095 c.urlParams_.Set("location", location) 9096 return c 9097} 9098 9099// Fields allows partial responses to be retrieved. See 9100// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9101// for more information. 9102func (c *JobsDeleteCall) Fields(s ...googleapi.Field) *JobsDeleteCall { 9103 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9104 return c 9105} 9106 9107// Context sets the context to be used in this call's Do method. Any 9108// pending HTTP request will be aborted if the provided context is 9109// canceled. 9110func (c *JobsDeleteCall) Context(ctx context.Context) *JobsDeleteCall { 9111 c.ctx_ = ctx 9112 return c 9113} 9114 9115// Header returns an http.Header that can be modified by the caller to 9116// add HTTP headers to the request. 9117func (c *JobsDeleteCall) Header() http.Header { 9118 if c.header_ == nil { 9119 c.header_ = make(http.Header) 9120 } 9121 return c.header_ 9122} 9123 9124func (c *JobsDeleteCall) doRequest(alt string) (*http.Response, error) { 9125 reqHeaders := make(http.Header) 9126 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9127 for k, v := range c.header_ { 9128 reqHeaders[k] = v 9129 } 9130 reqHeaders.Set("User-Agent", c.s.userAgent()) 9131 var body io.Reader = nil 9132 c.urlParams_.Set("alt", alt) 9133 c.urlParams_.Set("prettyPrint", "false") 9134 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/jobs/{+jobId}/delete") 9135 urls += "?" + c.urlParams_.Encode() 9136 req, err := http.NewRequest("DELETE", urls, body) 9137 if err != nil { 9138 return nil, err 9139 } 9140 req.Header = reqHeaders 9141 googleapi.Expand(req.URL, map[string]string{ 9142 "projectId": c.projectId, 9143 "jobId": c.jobId, 9144 }) 9145 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9146} 9147 9148// Do executes the "bigquery.jobs.delete" call. 9149func (c *JobsDeleteCall) Do(opts ...googleapi.CallOption) error { 9150 gensupport.SetOptions(c.urlParams_, opts...) 9151 res, err := c.doRequest("json") 9152 if err != nil { 9153 return err 9154 } 9155 defer googleapi.CloseBody(res) 9156 if err := googleapi.CheckResponse(res); err != nil { 9157 return err 9158 } 9159 return nil 9160 // { 9161 // "description": "Requests that a job is deleted. This call will return when the job is deleted. This method is available in limited preview.", 9162 // "flatPath": "projects/{projectsId}/jobs/{jobsId}/delete", 9163 // "httpMethod": "DELETE", 9164 // "id": "bigquery.jobs.delete", 9165 // "parameterOrder": [ 9166 // "projectId", 9167 // "jobId" 9168 // ], 9169 // "parameters": { 9170 // "jobId": { 9171 // "description": "Required. Job ID of the job to be deleted. If this is a parent job which has child jobs, all child jobs will be deleted as well. Deletion of child jobs directly is not allowed.", 9172 // "location": "path", 9173 // "pattern": "^[^/]+$", 9174 // "required": true, 9175 // "type": "string" 9176 // }, 9177 // "location": { 9178 // "description": "The geographic location of the job. Required. See details at: https://cloud.google.com/bigquery/docs/locations#specifying_your_location.", 9179 // "location": "query", 9180 // "type": "string" 9181 // }, 9182 // "projectId": { 9183 // "description": "Required. Project ID of the job to be deleted.", 9184 // "location": "path", 9185 // "pattern": "^[^/]+$", 9186 // "required": true, 9187 // "type": "string" 9188 // } 9189 // }, 9190 // "path": "projects/{+projectId}/jobs/{+jobId}/delete", 9191 // "scopes": [ 9192 // "https://www.googleapis.com/auth/bigquery", 9193 // "https://www.googleapis.com/auth/cloud-platform" 9194 // ] 9195 // } 9196 9197} 9198 9199// method id "bigquery.jobs.get": 9200 9201type JobsGetCall struct { 9202 s *Service 9203 projectId string 9204 jobId string 9205 urlParams_ gensupport.URLParams 9206 ifNoneMatch_ string 9207 ctx_ context.Context 9208 header_ http.Header 9209} 9210 9211// Get: Returns information about a specific job. Job information is 9212// available for a six month period after creation. Requires that you're 9213// the person who ran the job, or have the Is Owner project role. 9214// 9215// - jobId: [Required] Job ID of the requested job. 9216// - projectId: [Required] Project ID of the requested job. 9217func (r *JobsService) Get(projectId string, jobId string) *JobsGetCall { 9218 c := &JobsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9219 c.projectId = projectId 9220 c.jobId = jobId 9221 return c 9222} 9223 9224// Location sets the optional parameter "location": The geographic 9225// location of the job. Required except for US and EU. See details at 9226// https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 9227func (c *JobsGetCall) Location(location string) *JobsGetCall { 9228 c.urlParams_.Set("location", location) 9229 return c 9230} 9231 9232// Fields allows partial responses to be retrieved. See 9233// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9234// for more information. 9235func (c *JobsGetCall) Fields(s ...googleapi.Field) *JobsGetCall { 9236 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9237 return c 9238} 9239 9240// IfNoneMatch sets the optional parameter which makes the operation 9241// fail if the object's ETag matches the given value. This is useful for 9242// getting updates only after the object has changed since the last 9243// request. Use googleapi.IsNotModified to check whether the response 9244// error from Do is the result of In-None-Match. 9245func (c *JobsGetCall) IfNoneMatch(entityTag string) *JobsGetCall { 9246 c.ifNoneMatch_ = entityTag 9247 return c 9248} 9249 9250// Context sets the context to be used in this call's Do method. Any 9251// pending HTTP request will be aborted if the provided context is 9252// canceled. 9253func (c *JobsGetCall) Context(ctx context.Context) *JobsGetCall { 9254 c.ctx_ = ctx 9255 return c 9256} 9257 9258// Header returns an http.Header that can be modified by the caller to 9259// add HTTP headers to the request. 9260func (c *JobsGetCall) Header() http.Header { 9261 if c.header_ == nil { 9262 c.header_ = make(http.Header) 9263 } 9264 return c.header_ 9265} 9266 9267func (c *JobsGetCall) doRequest(alt string) (*http.Response, error) { 9268 reqHeaders := make(http.Header) 9269 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9270 for k, v := range c.header_ { 9271 reqHeaders[k] = v 9272 } 9273 reqHeaders.Set("User-Agent", c.s.userAgent()) 9274 if c.ifNoneMatch_ != "" { 9275 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9276 } 9277 var body io.Reader = nil 9278 c.urlParams_.Set("alt", alt) 9279 c.urlParams_.Set("prettyPrint", "false") 9280 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/jobs/{jobId}") 9281 urls += "?" + c.urlParams_.Encode() 9282 req, err := http.NewRequest("GET", urls, body) 9283 if err != nil { 9284 return nil, err 9285 } 9286 req.Header = reqHeaders 9287 googleapi.Expand(req.URL, map[string]string{ 9288 "projectId": c.projectId, 9289 "jobId": c.jobId, 9290 }) 9291 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9292} 9293 9294// Do executes the "bigquery.jobs.get" call. 9295// Exactly one of *Job or error will be non-nil. Any non-2xx status code 9296// is an error. Response headers are in either 9297// *Job.ServerResponse.Header or (if a response was returned at all) in 9298// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9299// whether the returned error was because http.StatusNotModified was 9300// returned. 9301func (c *JobsGetCall) Do(opts ...googleapi.CallOption) (*Job, error) { 9302 gensupport.SetOptions(c.urlParams_, opts...) 9303 res, err := c.doRequest("json") 9304 if res != nil && res.StatusCode == http.StatusNotModified { 9305 if res.Body != nil { 9306 res.Body.Close() 9307 } 9308 return nil, &googleapi.Error{ 9309 Code: res.StatusCode, 9310 Header: res.Header, 9311 } 9312 } 9313 if err != nil { 9314 return nil, err 9315 } 9316 defer googleapi.CloseBody(res) 9317 if err := googleapi.CheckResponse(res); err != nil { 9318 return nil, err 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": "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.", 9333 // "httpMethod": "GET", 9334 // "id": "bigquery.jobs.get", 9335 // "parameterOrder": [ 9336 // "projectId", 9337 // "jobId" 9338 // ], 9339 // "parameters": { 9340 // "jobId": { 9341 // "description": "[Required] Job ID of the requested job", 9342 // "location": "path", 9343 // "required": true, 9344 // "type": "string" 9345 // }, 9346 // "location": { 9347 // "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.", 9348 // "location": "query", 9349 // "type": "string" 9350 // }, 9351 // "projectId": { 9352 // "description": "[Required] Project ID of the requested job", 9353 // "location": "path", 9354 // "required": true, 9355 // "type": "string" 9356 // } 9357 // }, 9358 // "path": "projects/{projectId}/jobs/{jobId}", 9359 // "response": { 9360 // "$ref": "Job" 9361 // }, 9362 // "scopes": [ 9363 // "https://www.googleapis.com/auth/bigquery", 9364 // "https://www.googleapis.com/auth/cloud-platform", 9365 // "https://www.googleapis.com/auth/cloud-platform.read-only" 9366 // ] 9367 // } 9368 9369} 9370 9371// method id "bigquery.jobs.getQueryResults": 9372 9373type JobsGetQueryResultsCall struct { 9374 s *Service 9375 projectId string 9376 jobId string 9377 urlParams_ gensupport.URLParams 9378 ifNoneMatch_ string 9379 ctx_ context.Context 9380 header_ http.Header 9381} 9382 9383// GetQueryResults: Retrieves the results of a query job. 9384// 9385// - jobId: [Required] Job ID of the query job. 9386// - projectId: [Required] Project ID of the query job. 9387func (r *JobsService) GetQueryResults(projectId string, jobId string) *JobsGetQueryResultsCall { 9388 c := &JobsGetQueryResultsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9389 c.projectId = projectId 9390 c.jobId = jobId 9391 return c 9392} 9393 9394// Location sets the optional parameter "location": The geographic 9395// location where the job should run. Required except for US and EU. See 9396// details at 9397// https://cloud.google.com/bigquery/docs/locations#specifying_your_location. 9398func (c *JobsGetQueryResultsCall) Location(location string) *JobsGetQueryResultsCall { 9399 c.urlParams_.Set("location", location) 9400 return c 9401} 9402 9403// MaxResults sets the optional parameter "maxResults": Maximum number 9404// of results to read 9405func (c *JobsGetQueryResultsCall) MaxResults(maxResults int64) *JobsGetQueryResultsCall { 9406 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 9407 return c 9408} 9409 9410// PageToken sets the optional parameter "pageToken": Page token, 9411// returned by a previous call, to request the next page of results 9412func (c *JobsGetQueryResultsCall) PageToken(pageToken string) *JobsGetQueryResultsCall { 9413 c.urlParams_.Set("pageToken", pageToken) 9414 return c 9415} 9416 9417// StartIndex sets the optional parameter "startIndex": Zero-based index 9418// of the starting row 9419func (c *JobsGetQueryResultsCall) StartIndex(startIndex uint64) *JobsGetQueryResultsCall { 9420 c.urlParams_.Set("startIndex", fmt.Sprint(startIndex)) 9421 return c 9422} 9423 9424// TimeoutMs sets the optional parameter "timeoutMs": How long to wait 9425// for the query to complete, in milliseconds, before returning. Default 9426// is 10 seconds. If the timeout passes before the job completes, the 9427// 'jobComplete' field in the response will be false 9428func (c *JobsGetQueryResultsCall) TimeoutMs(timeoutMs int64) *JobsGetQueryResultsCall { 9429 c.urlParams_.Set("timeoutMs", fmt.Sprint(timeoutMs)) 9430 return c 9431} 9432 9433// Fields allows partial responses to be retrieved. See 9434// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9435// for more information. 9436func (c *JobsGetQueryResultsCall) Fields(s ...googleapi.Field) *JobsGetQueryResultsCall { 9437 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9438 return c 9439} 9440 9441// IfNoneMatch sets the optional parameter which makes the operation 9442// fail if the object's ETag matches the given value. This is useful for 9443// getting updates only after the object has changed since the last 9444// request. Use googleapi.IsNotModified to check whether the response 9445// error from Do is the result of In-None-Match. 9446func (c *JobsGetQueryResultsCall) IfNoneMatch(entityTag string) *JobsGetQueryResultsCall { 9447 c.ifNoneMatch_ = entityTag 9448 return c 9449} 9450 9451// Context sets the context to be used in this call's Do method. Any 9452// pending HTTP request will be aborted if the provided context is 9453// canceled. 9454func (c *JobsGetQueryResultsCall) Context(ctx context.Context) *JobsGetQueryResultsCall { 9455 c.ctx_ = ctx 9456 return c 9457} 9458 9459// Header returns an http.Header that can be modified by the caller to 9460// add HTTP headers to the request. 9461func (c *JobsGetQueryResultsCall) Header() http.Header { 9462 if c.header_ == nil { 9463 c.header_ = make(http.Header) 9464 } 9465 return c.header_ 9466} 9467 9468func (c *JobsGetQueryResultsCall) doRequest(alt string) (*http.Response, error) { 9469 reqHeaders := make(http.Header) 9470 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9471 for k, v := range c.header_ { 9472 reqHeaders[k] = v 9473 } 9474 reqHeaders.Set("User-Agent", c.s.userAgent()) 9475 if c.ifNoneMatch_ != "" { 9476 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9477 } 9478 var body io.Reader = nil 9479 c.urlParams_.Set("alt", alt) 9480 c.urlParams_.Set("prettyPrint", "false") 9481 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/queries/{jobId}") 9482 urls += "?" + c.urlParams_.Encode() 9483 req, err := http.NewRequest("GET", urls, body) 9484 if err != nil { 9485 return nil, err 9486 } 9487 req.Header = reqHeaders 9488 googleapi.Expand(req.URL, map[string]string{ 9489 "projectId": c.projectId, 9490 "jobId": c.jobId, 9491 }) 9492 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9493} 9494 9495// Do executes the "bigquery.jobs.getQueryResults" call. 9496// Exactly one of *GetQueryResultsResponse or error will be non-nil. Any 9497// non-2xx status code is an error. Response headers are in either 9498// *GetQueryResultsResponse.ServerResponse.Header or (if a response was 9499// returned at all) in error.(*googleapi.Error).Header. Use 9500// googleapi.IsNotModified to check whether the returned error was 9501// because http.StatusNotModified was returned. 9502func (c *JobsGetQueryResultsCall) Do(opts ...googleapi.CallOption) (*GetQueryResultsResponse, error) { 9503 gensupport.SetOptions(c.urlParams_, opts...) 9504 res, err := c.doRequest("json") 9505 if res != nil && res.StatusCode == http.StatusNotModified { 9506 if res.Body != nil { 9507 res.Body.Close() 9508 } 9509 return nil, &googleapi.Error{ 9510 Code: res.StatusCode, 9511 Header: res.Header, 9512 } 9513 } 9514 if err != nil { 9515 return nil, err 9516 } 9517 defer googleapi.CloseBody(res) 9518 if err := googleapi.CheckResponse(res); err != nil { 9519 return nil, err 9520 } 9521 ret := &GetQueryResultsResponse{ 9522 ServerResponse: googleapi.ServerResponse{ 9523 Header: res.Header, 9524 HTTPStatusCode: res.StatusCode, 9525 }, 9526 } 9527 target := &ret 9528 if err := gensupport.DecodeResponse(target, res); err != nil { 9529 return nil, err 9530 } 9531 return ret, nil 9532 // { 9533 // "description": "Retrieves the results of a query job.", 9534 // "httpMethod": "GET", 9535 // "id": "bigquery.jobs.getQueryResults", 9536 // "parameterOrder": [ 9537 // "projectId", 9538 // "jobId" 9539 // ], 9540 // "parameters": { 9541 // "jobId": { 9542 // "description": "[Required] Job ID of the query job", 9543 // "location": "path", 9544 // "required": true, 9545 // "type": "string" 9546 // }, 9547 // "location": { 9548 // "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.", 9549 // "location": "query", 9550 // "type": "string" 9551 // }, 9552 // "maxResults": { 9553 // "description": "Maximum number of results to read", 9554 // "format": "uint32", 9555 // "location": "query", 9556 // "type": "integer" 9557 // }, 9558 // "pageToken": { 9559 // "description": "Page token, returned by a previous call, to request the next page of results", 9560 // "location": "query", 9561 // "type": "string" 9562 // }, 9563 // "projectId": { 9564 // "description": "[Required] Project ID of the query job", 9565 // "location": "path", 9566 // "required": true, 9567 // "type": "string" 9568 // }, 9569 // "startIndex": { 9570 // "description": "Zero-based index of the starting row", 9571 // "format": "uint64", 9572 // "location": "query", 9573 // "type": "string" 9574 // }, 9575 // "timeoutMs": { 9576 // "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", 9577 // "format": "uint32", 9578 // "location": "query", 9579 // "type": "integer" 9580 // } 9581 // }, 9582 // "path": "projects/{projectId}/queries/{jobId}", 9583 // "response": { 9584 // "$ref": "GetQueryResultsResponse" 9585 // }, 9586 // "scopes": [ 9587 // "https://www.googleapis.com/auth/bigquery", 9588 // "https://www.googleapis.com/auth/cloud-platform", 9589 // "https://www.googleapis.com/auth/cloud-platform.read-only" 9590 // ] 9591 // } 9592 9593} 9594 9595// Pages invokes f for each page of results. 9596// A non-nil error returned from f will halt the iteration. 9597// The provided context supersedes any context provided to the Context method. 9598func (c *JobsGetQueryResultsCall) Pages(ctx context.Context, f func(*GetQueryResultsResponse) error) error { 9599 c.ctx_ = ctx 9600 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 9601 for { 9602 x, err := c.Do() 9603 if err != nil { 9604 return err 9605 } 9606 if err := f(x); err != nil { 9607 return err 9608 } 9609 if x.PageToken == "" { 9610 return nil 9611 } 9612 c.PageToken(x.PageToken) 9613 } 9614} 9615 9616// method id "bigquery.jobs.insert": 9617 9618type JobsInsertCall struct { 9619 s *Service 9620 projectId string 9621 job *Job 9622 urlParams_ gensupport.URLParams 9623 mediaInfo_ *gensupport.MediaInfo 9624 ctx_ context.Context 9625 header_ http.Header 9626} 9627 9628// Insert: Starts a new asynchronous job. Requires the Can View project 9629// role. 9630// 9631// - projectId: Project ID of the project that will be billed for the 9632// job. 9633func (r *JobsService) Insert(projectId string, job *Job) *JobsInsertCall { 9634 c := &JobsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9635 c.projectId = projectId 9636 c.job = job 9637 return c 9638} 9639 9640// Media specifies the media to upload in one or more chunks. The chunk 9641// size may be controlled by supplying a MediaOption generated by 9642// googleapi.ChunkSize. The chunk size defaults to 9643// googleapi.DefaultUploadChunkSize.The Content-Type header used in the 9644// upload request will be determined by sniffing the contents of r, 9645// unless a MediaOption generated by googleapi.ContentType is 9646// supplied. 9647// At most one of Media and ResumableMedia may be set. 9648func (c *JobsInsertCall) Media(r io.Reader, options ...googleapi.MediaOption) *JobsInsertCall { 9649 c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) 9650 return c 9651} 9652 9653// ResumableMedia specifies the media to upload in chunks and can be 9654// canceled with ctx. 9655// 9656// Deprecated: use Media instead. 9657// 9658// At most one of Media and ResumableMedia may be set. mediaType 9659// identifies the MIME media type of the upload, such as "image/png". If 9660// mediaType is "", it will be auto-detected. The provided ctx will 9661// supersede any context previously provided to the Context method. 9662func (c *JobsInsertCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *JobsInsertCall { 9663 c.ctx_ = ctx 9664 c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) 9665 return c 9666} 9667 9668// ProgressUpdater provides a callback function that will be called 9669// after every chunk. It should be a low-latency function in order to 9670// not slow down the upload operation. This should only be called when 9671// using ResumableMedia (as opposed to Media). 9672func (c *JobsInsertCall) ProgressUpdater(pu googleapi.ProgressUpdater) *JobsInsertCall { 9673 c.mediaInfo_.SetProgressUpdater(pu) 9674 return c 9675} 9676 9677// Fields allows partial responses to be retrieved. See 9678// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9679// for more information. 9680func (c *JobsInsertCall) Fields(s ...googleapi.Field) *JobsInsertCall { 9681 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9682 return c 9683} 9684 9685// Context sets the context to be used in this call's Do method. Any 9686// pending HTTP request will be aborted if the provided context is 9687// canceled. 9688// This context will supersede any context previously provided to the 9689// ResumableMedia method. 9690func (c *JobsInsertCall) Context(ctx context.Context) *JobsInsertCall { 9691 c.ctx_ = ctx 9692 return c 9693} 9694 9695// Header returns an http.Header that can be modified by the caller to 9696// add HTTP headers to the request. 9697func (c *JobsInsertCall) Header() http.Header { 9698 if c.header_ == nil { 9699 c.header_ = make(http.Header) 9700 } 9701 return c.header_ 9702} 9703 9704func (c *JobsInsertCall) doRequest(alt string) (*http.Response, error) { 9705 reqHeaders := make(http.Header) 9706 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9707 for k, v := range c.header_ { 9708 reqHeaders[k] = v 9709 } 9710 reqHeaders.Set("User-Agent", c.s.userAgent()) 9711 var body io.Reader = nil 9712 body, err := googleapi.WithoutDataWrapper.JSONReader(c.job) 9713 if err != nil { 9714 return nil, err 9715 } 9716 reqHeaders.Set("Content-Type", "application/json") 9717 c.urlParams_.Set("alt", alt) 9718 c.urlParams_.Set("prettyPrint", "false") 9719 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/jobs") 9720 if c.mediaInfo_ != nil { 9721 urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/bigquery/v2/projects/{projectId}/jobs") 9722 c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) 9723 } 9724 if body == nil { 9725 body = new(bytes.Buffer) 9726 reqHeaders.Set("Content-Type", "application/json") 9727 } 9728 body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) 9729 defer cleanup() 9730 urls += "?" + c.urlParams_.Encode() 9731 req, err := http.NewRequest("POST", urls, body) 9732 if err != nil { 9733 return nil, err 9734 } 9735 req.Header = reqHeaders 9736 req.GetBody = getBody 9737 googleapi.Expand(req.URL, map[string]string{ 9738 "projectId": c.projectId, 9739 }) 9740 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9741} 9742 9743// Do executes the "bigquery.jobs.insert" call. 9744// Exactly one of *Job or error will be non-nil. Any non-2xx status code 9745// is an error. Response headers are in either 9746// *Job.ServerResponse.Header or (if a response was returned at all) in 9747// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9748// whether the returned error was because http.StatusNotModified was 9749// returned. 9750func (c *JobsInsertCall) Do(opts ...googleapi.CallOption) (*Job, error) { 9751 gensupport.SetOptions(c.urlParams_, opts...) 9752 res, err := c.doRequest("json") 9753 if res != nil && res.StatusCode == http.StatusNotModified { 9754 if res.Body != nil { 9755 res.Body.Close() 9756 } 9757 return nil, &googleapi.Error{ 9758 Code: res.StatusCode, 9759 Header: res.Header, 9760 } 9761 } 9762 if err != nil { 9763 return nil, err 9764 } 9765 defer googleapi.CloseBody(res) 9766 if err := googleapi.CheckResponse(res); err != nil { 9767 return nil, err 9768 } 9769 rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) 9770 if rx != nil { 9771 rx.Client = c.s.client 9772 rx.UserAgent = c.s.userAgent() 9773 ctx := c.ctx_ 9774 if ctx == nil { 9775 ctx = context.TODO() 9776 } 9777 res, err = rx.Upload(ctx) 9778 if err != nil { 9779 return nil, err 9780 } 9781 defer res.Body.Close() 9782 if err := googleapi.CheckResponse(res); err != nil { 9783 return nil, err 9784 } 9785 } 9786 ret := &Job{ 9787 ServerResponse: googleapi.ServerResponse{ 9788 Header: res.Header, 9789 HTTPStatusCode: res.StatusCode, 9790 }, 9791 } 9792 target := &ret 9793 if err := gensupport.DecodeResponse(target, res); err != nil { 9794 return nil, err 9795 } 9796 return ret, nil 9797 // { 9798 // "description": "Starts a new asynchronous job. Requires the Can View project role.", 9799 // "httpMethod": "POST", 9800 // "id": "bigquery.jobs.insert", 9801 // "mediaUpload": { 9802 // "accept": [ 9803 // "*/*" 9804 // ], 9805 // "protocols": { 9806 // "resumable": { 9807 // "multipart": true, 9808 // "path": "/resumable/upload/bigquery/v2/projects/{projectId}/jobs" 9809 // }, 9810 // "simple": { 9811 // "multipart": true, 9812 // "path": "/upload/bigquery/v2/projects/{projectId}/jobs" 9813 // } 9814 // } 9815 // }, 9816 // "parameterOrder": [ 9817 // "projectId" 9818 // ], 9819 // "parameters": { 9820 // "projectId": { 9821 // "description": "Project ID of the project that will be billed for the job", 9822 // "location": "path", 9823 // "required": true, 9824 // "type": "string" 9825 // } 9826 // }, 9827 // "path": "projects/{projectId}/jobs", 9828 // "request": { 9829 // "$ref": "Job" 9830 // }, 9831 // "response": { 9832 // "$ref": "Job" 9833 // }, 9834 // "scopes": [ 9835 // "https://www.googleapis.com/auth/bigquery", 9836 // "https://www.googleapis.com/auth/cloud-platform", 9837 // "https://www.googleapis.com/auth/devstorage.full_control", 9838 // "https://www.googleapis.com/auth/devstorage.read_only", 9839 // "https://www.googleapis.com/auth/devstorage.read_write" 9840 // ], 9841 // "supportsMediaUpload": true 9842 // } 9843 9844} 9845 9846// method id "bigquery.jobs.list": 9847 9848type JobsListCall struct { 9849 s *Service 9850 projectId string 9851 urlParams_ gensupport.URLParams 9852 ifNoneMatch_ string 9853 ctx_ context.Context 9854 header_ http.Header 9855} 9856 9857// List: Lists all jobs that you started in the specified project. Job 9858// information is available for a six month period after creation. The 9859// job list is sorted in reverse chronological order, by job creation 9860// time. Requires the Can View project role, or the Is Owner project 9861// role if you set the allUsers property. 9862// 9863// - projectId: Project ID of the jobs to list. 9864func (r *JobsService) List(projectId string) *JobsListCall { 9865 c := &JobsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9866 c.projectId = projectId 9867 return c 9868} 9869 9870// AllUsers sets the optional parameter "allUsers": Whether to display 9871// jobs owned by all users in the project. Default false 9872func (c *JobsListCall) AllUsers(allUsers bool) *JobsListCall { 9873 c.urlParams_.Set("allUsers", fmt.Sprint(allUsers)) 9874 return c 9875} 9876 9877// MaxCreationTime sets the optional parameter "maxCreationTime": Max 9878// value for job creation time, in milliseconds since the POSIX epoch. 9879// If set, only jobs created before or at this timestamp are returned 9880func (c *JobsListCall) MaxCreationTime(maxCreationTime uint64) *JobsListCall { 9881 c.urlParams_.Set("maxCreationTime", fmt.Sprint(maxCreationTime)) 9882 return c 9883} 9884 9885// MaxResults sets the optional parameter "maxResults": Maximum number 9886// of results to return 9887func (c *JobsListCall) MaxResults(maxResults int64) *JobsListCall { 9888 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 9889 return c 9890} 9891 9892// MinCreationTime sets the optional parameter "minCreationTime": Min 9893// value for job creation time, in milliseconds since the POSIX epoch. 9894// If set, only jobs created after or at this timestamp are returned 9895func (c *JobsListCall) MinCreationTime(minCreationTime uint64) *JobsListCall { 9896 c.urlParams_.Set("minCreationTime", fmt.Sprint(minCreationTime)) 9897 return c 9898} 9899 9900// PageToken sets the optional parameter "pageToken": Page token, 9901// returned by a previous call, to request the next page of results 9902func (c *JobsListCall) PageToken(pageToken string) *JobsListCall { 9903 c.urlParams_.Set("pageToken", pageToken) 9904 return c 9905} 9906 9907// ParentJobId sets the optional parameter "parentJobId": If set, 9908// retrieves only jobs whose parent is this job. Otherwise, retrieves 9909// only jobs which have no parent 9910func (c *JobsListCall) ParentJobId(parentJobId string) *JobsListCall { 9911 c.urlParams_.Set("parentJobId", parentJobId) 9912 return c 9913} 9914 9915// Projection sets the optional parameter "projection": Restrict 9916// information returned to a set of selected fields 9917// 9918// Possible values: 9919// "full" - Includes all job data 9920// "minimal" - Does not include the job configuration 9921func (c *JobsListCall) Projection(projection string) *JobsListCall { 9922 c.urlParams_.Set("projection", projection) 9923 return c 9924} 9925 9926// StateFilter sets the optional parameter "stateFilter": Filter for job 9927// state 9928// 9929// Possible values: 9930// "done" - Finished jobs 9931// "pending" - Pending jobs 9932// "running" - Running jobs 9933func (c *JobsListCall) StateFilter(stateFilter ...string) *JobsListCall { 9934 c.urlParams_.SetMulti("stateFilter", append([]string{}, stateFilter...)) 9935 return c 9936} 9937 9938// Fields allows partial responses to be retrieved. See 9939// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9940// for more information. 9941func (c *JobsListCall) Fields(s ...googleapi.Field) *JobsListCall { 9942 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9943 return c 9944} 9945 9946// IfNoneMatch sets the optional parameter which makes the operation 9947// fail if the object's ETag matches the given value. This is useful for 9948// getting updates only after the object has changed since the last 9949// request. Use googleapi.IsNotModified to check whether the response 9950// error from Do is the result of In-None-Match. 9951func (c *JobsListCall) IfNoneMatch(entityTag string) *JobsListCall { 9952 c.ifNoneMatch_ = entityTag 9953 return c 9954} 9955 9956// Context sets the context to be used in this call's Do method. Any 9957// pending HTTP request will be aborted if the provided context is 9958// canceled. 9959func (c *JobsListCall) Context(ctx context.Context) *JobsListCall { 9960 c.ctx_ = ctx 9961 return c 9962} 9963 9964// Header returns an http.Header that can be modified by the caller to 9965// add HTTP headers to the request. 9966func (c *JobsListCall) Header() http.Header { 9967 if c.header_ == nil { 9968 c.header_ = make(http.Header) 9969 } 9970 return c.header_ 9971} 9972 9973func (c *JobsListCall) doRequest(alt string) (*http.Response, error) { 9974 reqHeaders := make(http.Header) 9975 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 9976 for k, v := range c.header_ { 9977 reqHeaders[k] = v 9978 } 9979 reqHeaders.Set("User-Agent", c.s.userAgent()) 9980 if c.ifNoneMatch_ != "" { 9981 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9982 } 9983 var body io.Reader = nil 9984 c.urlParams_.Set("alt", alt) 9985 c.urlParams_.Set("prettyPrint", "false") 9986 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/jobs") 9987 urls += "?" + c.urlParams_.Encode() 9988 req, err := http.NewRequest("GET", urls, body) 9989 if err != nil { 9990 return nil, err 9991 } 9992 req.Header = reqHeaders 9993 googleapi.Expand(req.URL, map[string]string{ 9994 "projectId": c.projectId, 9995 }) 9996 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9997} 9998 9999// Do executes the "bigquery.jobs.list" call. 10000// Exactly one of *JobList or error will be non-nil. Any non-2xx status 10001// code is an error. Response headers are in either 10002// *JobList.ServerResponse.Header or (if a response was returned at all) 10003// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 10004// check whether the returned error was because http.StatusNotModified 10005// was returned. 10006func (c *JobsListCall) Do(opts ...googleapi.CallOption) (*JobList, error) { 10007 gensupport.SetOptions(c.urlParams_, opts...) 10008 res, err := c.doRequest("json") 10009 if res != nil && res.StatusCode == http.StatusNotModified { 10010 if res.Body != nil { 10011 res.Body.Close() 10012 } 10013 return nil, &googleapi.Error{ 10014 Code: res.StatusCode, 10015 Header: res.Header, 10016 } 10017 } 10018 if err != nil { 10019 return nil, err 10020 } 10021 defer googleapi.CloseBody(res) 10022 if err := googleapi.CheckResponse(res); err != nil { 10023 return nil, err 10024 } 10025 ret := &JobList{ 10026 ServerResponse: googleapi.ServerResponse{ 10027 Header: res.Header, 10028 HTTPStatusCode: res.StatusCode, 10029 }, 10030 } 10031 target := &ret 10032 if err := gensupport.DecodeResponse(target, res); err != nil { 10033 return nil, err 10034 } 10035 return ret, nil 10036 // { 10037 // "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.", 10038 // "httpMethod": "GET", 10039 // "id": "bigquery.jobs.list", 10040 // "parameterOrder": [ 10041 // "projectId" 10042 // ], 10043 // "parameters": { 10044 // "allUsers": { 10045 // "description": "Whether to display jobs owned by all users in the project. Default false", 10046 // "location": "query", 10047 // "type": "boolean" 10048 // }, 10049 // "maxCreationTime": { 10050 // "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", 10051 // "format": "uint64", 10052 // "location": "query", 10053 // "type": "string" 10054 // }, 10055 // "maxResults": { 10056 // "description": "Maximum number of results to return", 10057 // "format": "uint32", 10058 // "location": "query", 10059 // "type": "integer" 10060 // }, 10061 // "minCreationTime": { 10062 // "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", 10063 // "format": "uint64", 10064 // "location": "query", 10065 // "type": "string" 10066 // }, 10067 // "pageToken": { 10068 // "description": "Page token, returned by a previous call, to request the next page of results", 10069 // "location": "query", 10070 // "type": "string" 10071 // }, 10072 // "parentJobId": { 10073 // "description": "If set, retrieves only jobs whose parent is this job. Otherwise, retrieves only jobs which have no parent", 10074 // "location": "query", 10075 // "type": "string" 10076 // }, 10077 // "projectId": { 10078 // "description": "Project ID of the jobs to list", 10079 // "location": "path", 10080 // "required": true, 10081 // "type": "string" 10082 // }, 10083 // "projection": { 10084 // "description": "Restrict information returned to a set of selected fields", 10085 // "enum": [ 10086 // "full", 10087 // "minimal" 10088 // ], 10089 // "enumDescriptions": [ 10090 // "Includes all job data", 10091 // "Does not include the job configuration" 10092 // ], 10093 // "location": "query", 10094 // "type": "string" 10095 // }, 10096 // "stateFilter": { 10097 // "description": "Filter for job state", 10098 // "enum": [ 10099 // "done", 10100 // "pending", 10101 // "running" 10102 // ], 10103 // "enumDescriptions": [ 10104 // "Finished jobs", 10105 // "Pending jobs", 10106 // "Running jobs" 10107 // ], 10108 // "location": "query", 10109 // "repeated": true, 10110 // "type": "string" 10111 // } 10112 // }, 10113 // "path": "projects/{projectId}/jobs", 10114 // "response": { 10115 // "$ref": "JobList" 10116 // }, 10117 // "scopes": [ 10118 // "https://www.googleapis.com/auth/bigquery", 10119 // "https://www.googleapis.com/auth/cloud-platform", 10120 // "https://www.googleapis.com/auth/cloud-platform.read-only" 10121 // ] 10122 // } 10123 10124} 10125 10126// Pages invokes f for each page of results. 10127// A non-nil error returned from f will halt the iteration. 10128// The provided context supersedes any context provided to the Context method. 10129func (c *JobsListCall) Pages(ctx context.Context, f func(*JobList) error) error { 10130 c.ctx_ = ctx 10131 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 10132 for { 10133 x, err := c.Do() 10134 if err != nil { 10135 return err 10136 } 10137 if err := f(x); err != nil { 10138 return err 10139 } 10140 if x.NextPageToken == "" { 10141 return nil 10142 } 10143 c.PageToken(x.NextPageToken) 10144 } 10145} 10146 10147// method id "bigquery.jobs.query": 10148 10149type JobsQueryCall struct { 10150 s *Service 10151 projectId string 10152 queryrequest *QueryRequest 10153 urlParams_ gensupport.URLParams 10154 ctx_ context.Context 10155 header_ http.Header 10156} 10157 10158// Query: Runs a BigQuery SQL query synchronously and returns query 10159// results if the query completes within a specified timeout. 10160// 10161// - projectId: Project ID of the project billed for the query. 10162func (r *JobsService) Query(projectId string, queryrequest *QueryRequest) *JobsQueryCall { 10163 c := &JobsQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10164 c.projectId = projectId 10165 c.queryrequest = queryrequest 10166 return c 10167} 10168 10169// Fields allows partial responses to be retrieved. See 10170// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10171// for more information. 10172func (c *JobsQueryCall) Fields(s ...googleapi.Field) *JobsQueryCall { 10173 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10174 return c 10175} 10176 10177// Context sets the context to be used in this call's Do method. Any 10178// pending HTTP request will be aborted if the provided context is 10179// canceled. 10180func (c *JobsQueryCall) Context(ctx context.Context) *JobsQueryCall { 10181 c.ctx_ = ctx 10182 return c 10183} 10184 10185// Header returns an http.Header that can be modified by the caller to 10186// add HTTP headers to the request. 10187func (c *JobsQueryCall) Header() http.Header { 10188 if c.header_ == nil { 10189 c.header_ = make(http.Header) 10190 } 10191 return c.header_ 10192} 10193 10194func (c *JobsQueryCall) doRequest(alt string) (*http.Response, error) { 10195 reqHeaders := make(http.Header) 10196 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10197 for k, v := range c.header_ { 10198 reqHeaders[k] = v 10199 } 10200 reqHeaders.Set("User-Agent", c.s.userAgent()) 10201 var body io.Reader = nil 10202 body, err := googleapi.WithoutDataWrapper.JSONReader(c.queryrequest) 10203 if err != nil { 10204 return nil, err 10205 } 10206 reqHeaders.Set("Content-Type", "application/json") 10207 c.urlParams_.Set("alt", alt) 10208 c.urlParams_.Set("prettyPrint", "false") 10209 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/queries") 10210 urls += "?" + c.urlParams_.Encode() 10211 req, err := http.NewRequest("POST", urls, body) 10212 if err != nil { 10213 return nil, err 10214 } 10215 req.Header = reqHeaders 10216 googleapi.Expand(req.URL, map[string]string{ 10217 "projectId": c.projectId, 10218 }) 10219 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10220} 10221 10222// Do executes the "bigquery.jobs.query" call. 10223// Exactly one of *QueryResponse or error will be non-nil. Any non-2xx 10224// status code is an error. Response headers are in either 10225// *QueryResponse.ServerResponse.Header or (if a response was returned 10226// at all) in error.(*googleapi.Error).Header. Use 10227// googleapi.IsNotModified to check whether the returned error was 10228// because http.StatusNotModified was returned. 10229func (c *JobsQueryCall) Do(opts ...googleapi.CallOption) (*QueryResponse, error) { 10230 gensupport.SetOptions(c.urlParams_, opts...) 10231 res, err := c.doRequest("json") 10232 if res != nil && res.StatusCode == http.StatusNotModified { 10233 if res.Body != nil { 10234 res.Body.Close() 10235 } 10236 return nil, &googleapi.Error{ 10237 Code: res.StatusCode, 10238 Header: res.Header, 10239 } 10240 } 10241 if err != nil { 10242 return nil, err 10243 } 10244 defer googleapi.CloseBody(res) 10245 if err := googleapi.CheckResponse(res); err != nil { 10246 return nil, err 10247 } 10248 ret := &QueryResponse{ 10249 ServerResponse: googleapi.ServerResponse{ 10250 Header: res.Header, 10251 HTTPStatusCode: res.StatusCode, 10252 }, 10253 } 10254 target := &ret 10255 if err := gensupport.DecodeResponse(target, res); err != nil { 10256 return nil, err 10257 } 10258 return ret, nil 10259 // { 10260 // "description": "Runs a BigQuery SQL query synchronously and returns query results if the query completes within a specified timeout.", 10261 // "httpMethod": "POST", 10262 // "id": "bigquery.jobs.query", 10263 // "parameterOrder": [ 10264 // "projectId" 10265 // ], 10266 // "parameters": { 10267 // "projectId": { 10268 // "description": "Project ID of the project billed for the query", 10269 // "location": "path", 10270 // "required": true, 10271 // "type": "string" 10272 // } 10273 // }, 10274 // "path": "projects/{projectId}/queries", 10275 // "request": { 10276 // "$ref": "QueryRequest" 10277 // }, 10278 // "response": { 10279 // "$ref": "QueryResponse" 10280 // }, 10281 // "scopes": [ 10282 // "https://www.googleapis.com/auth/bigquery", 10283 // "https://www.googleapis.com/auth/cloud-platform", 10284 // "https://www.googleapis.com/auth/cloud-platform.read-only" 10285 // ] 10286 // } 10287 10288} 10289 10290// method id "bigquery.models.delete": 10291 10292type ModelsDeleteCall struct { 10293 s *Service 10294 projectId string 10295 datasetId string 10296 modelId string 10297 urlParams_ gensupport.URLParams 10298 ctx_ context.Context 10299 header_ http.Header 10300} 10301 10302// Delete: Deletes the model specified by modelId from the dataset. 10303// 10304// - datasetId: Dataset ID of the model to delete. 10305// - modelId: Model ID of the model to delete. 10306// - projectId: Project ID of the model to delete. 10307func (r *ModelsService) Delete(projectId string, datasetId string, modelId string) *ModelsDeleteCall { 10308 c := &ModelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10309 c.projectId = projectId 10310 c.datasetId = datasetId 10311 c.modelId = modelId 10312 return c 10313} 10314 10315// Fields allows partial responses to be retrieved. See 10316// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10317// for more information. 10318func (c *ModelsDeleteCall) Fields(s ...googleapi.Field) *ModelsDeleteCall { 10319 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10320 return c 10321} 10322 10323// Context sets the context to be used in this call's Do method. Any 10324// pending HTTP request will be aborted if the provided context is 10325// canceled. 10326func (c *ModelsDeleteCall) Context(ctx context.Context) *ModelsDeleteCall { 10327 c.ctx_ = ctx 10328 return c 10329} 10330 10331// Header returns an http.Header that can be modified by the caller to 10332// add HTTP headers to the request. 10333func (c *ModelsDeleteCall) Header() http.Header { 10334 if c.header_ == nil { 10335 c.header_ = make(http.Header) 10336 } 10337 return c.header_ 10338} 10339 10340func (c *ModelsDeleteCall) doRequest(alt string) (*http.Response, error) { 10341 reqHeaders := make(http.Header) 10342 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10343 for k, v := range c.header_ { 10344 reqHeaders[k] = v 10345 } 10346 reqHeaders.Set("User-Agent", c.s.userAgent()) 10347 var body io.Reader = nil 10348 c.urlParams_.Set("alt", alt) 10349 c.urlParams_.Set("prettyPrint", "false") 10350 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}") 10351 urls += "?" + c.urlParams_.Encode() 10352 req, err := http.NewRequest("DELETE", urls, body) 10353 if err != nil { 10354 return nil, err 10355 } 10356 req.Header = reqHeaders 10357 googleapi.Expand(req.URL, map[string]string{ 10358 "projectId": c.projectId, 10359 "datasetId": c.datasetId, 10360 "modelId": c.modelId, 10361 }) 10362 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10363} 10364 10365// Do executes the "bigquery.models.delete" call. 10366func (c *ModelsDeleteCall) Do(opts ...googleapi.CallOption) error { 10367 gensupport.SetOptions(c.urlParams_, opts...) 10368 res, err := c.doRequest("json") 10369 if err != nil { 10370 return err 10371 } 10372 defer googleapi.CloseBody(res) 10373 if err := googleapi.CheckResponse(res); err != nil { 10374 return err 10375 } 10376 return nil 10377 // { 10378 // "description": "Deletes the model specified by modelId from the dataset.", 10379 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/models/{modelsId}", 10380 // "httpMethod": "DELETE", 10381 // "id": "bigquery.models.delete", 10382 // "parameterOrder": [ 10383 // "projectId", 10384 // "datasetId", 10385 // "modelId" 10386 // ], 10387 // "parameters": { 10388 // "datasetId": { 10389 // "description": "Required. Dataset ID of the model to delete.", 10390 // "location": "path", 10391 // "pattern": "^[^/]+$", 10392 // "required": true, 10393 // "type": "string" 10394 // }, 10395 // "modelId": { 10396 // "description": "Required. Model ID of the model to delete.", 10397 // "location": "path", 10398 // "pattern": "^[^/]+$", 10399 // "required": true, 10400 // "type": "string" 10401 // }, 10402 // "projectId": { 10403 // "description": "Required. Project ID of the model to delete.", 10404 // "location": "path", 10405 // "pattern": "^[^/]+$", 10406 // "required": true, 10407 // "type": "string" 10408 // } 10409 // }, 10410 // "path": "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}", 10411 // "scopes": [ 10412 // "https://www.googleapis.com/auth/bigquery", 10413 // "https://www.googleapis.com/auth/cloud-platform" 10414 // ] 10415 // } 10416 10417} 10418 10419// method id "bigquery.models.get": 10420 10421type ModelsGetCall struct { 10422 s *Service 10423 projectId string 10424 datasetId string 10425 modelId string 10426 urlParams_ gensupport.URLParams 10427 ifNoneMatch_ string 10428 ctx_ context.Context 10429 header_ http.Header 10430} 10431 10432// Get: Gets the specified model resource by model ID. 10433// 10434// - datasetId: Dataset ID of the requested model. 10435// - modelId: Model ID of the requested model. 10436// - projectId: Project ID of the requested model. 10437func (r *ModelsService) Get(projectId string, datasetId string, modelId string) *ModelsGetCall { 10438 c := &ModelsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10439 c.projectId = projectId 10440 c.datasetId = datasetId 10441 c.modelId = modelId 10442 return c 10443} 10444 10445// Fields allows partial responses to be retrieved. See 10446// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10447// for more information. 10448func (c *ModelsGetCall) Fields(s ...googleapi.Field) *ModelsGetCall { 10449 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10450 return c 10451} 10452 10453// IfNoneMatch sets the optional parameter which makes the operation 10454// fail if the object's ETag matches the given value. This is useful for 10455// getting updates only after the object has changed since the last 10456// request. Use googleapi.IsNotModified to check whether the response 10457// error from Do is the result of In-None-Match. 10458func (c *ModelsGetCall) IfNoneMatch(entityTag string) *ModelsGetCall { 10459 c.ifNoneMatch_ = entityTag 10460 return c 10461} 10462 10463// Context sets the context to be used in this call's Do method. Any 10464// pending HTTP request will be aborted if the provided context is 10465// canceled. 10466func (c *ModelsGetCall) Context(ctx context.Context) *ModelsGetCall { 10467 c.ctx_ = ctx 10468 return c 10469} 10470 10471// Header returns an http.Header that can be modified by the caller to 10472// add HTTP headers to the request. 10473func (c *ModelsGetCall) Header() http.Header { 10474 if c.header_ == nil { 10475 c.header_ = make(http.Header) 10476 } 10477 return c.header_ 10478} 10479 10480func (c *ModelsGetCall) doRequest(alt string) (*http.Response, error) { 10481 reqHeaders := make(http.Header) 10482 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10483 for k, v := range c.header_ { 10484 reqHeaders[k] = v 10485 } 10486 reqHeaders.Set("User-Agent", c.s.userAgent()) 10487 if c.ifNoneMatch_ != "" { 10488 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 10489 } 10490 var body io.Reader = nil 10491 c.urlParams_.Set("alt", alt) 10492 c.urlParams_.Set("prettyPrint", "false") 10493 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}") 10494 urls += "?" + c.urlParams_.Encode() 10495 req, err := http.NewRequest("GET", urls, body) 10496 if err != nil { 10497 return nil, err 10498 } 10499 req.Header = reqHeaders 10500 googleapi.Expand(req.URL, map[string]string{ 10501 "projectId": c.projectId, 10502 "datasetId": c.datasetId, 10503 "modelId": c.modelId, 10504 }) 10505 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10506} 10507 10508// Do executes the "bigquery.models.get" call. 10509// Exactly one of *Model or error will be non-nil. Any non-2xx status 10510// code is an error. Response headers are in either 10511// *Model.ServerResponse.Header or (if a response was returned at all) 10512// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 10513// check whether the returned error was because http.StatusNotModified 10514// was returned. 10515func (c *ModelsGetCall) Do(opts ...googleapi.CallOption) (*Model, error) { 10516 gensupport.SetOptions(c.urlParams_, opts...) 10517 res, err := c.doRequest("json") 10518 if res != nil && res.StatusCode == http.StatusNotModified { 10519 if res.Body != nil { 10520 res.Body.Close() 10521 } 10522 return nil, &googleapi.Error{ 10523 Code: res.StatusCode, 10524 Header: res.Header, 10525 } 10526 } 10527 if err != nil { 10528 return nil, err 10529 } 10530 defer googleapi.CloseBody(res) 10531 if err := googleapi.CheckResponse(res); err != nil { 10532 return nil, err 10533 } 10534 ret := &Model{ 10535 ServerResponse: googleapi.ServerResponse{ 10536 Header: res.Header, 10537 HTTPStatusCode: res.StatusCode, 10538 }, 10539 } 10540 target := &ret 10541 if err := gensupport.DecodeResponse(target, res); err != nil { 10542 return nil, err 10543 } 10544 return ret, nil 10545 // { 10546 // "description": "Gets the specified model resource by model ID.", 10547 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/models/{modelsId}", 10548 // "httpMethod": "GET", 10549 // "id": "bigquery.models.get", 10550 // "parameterOrder": [ 10551 // "projectId", 10552 // "datasetId", 10553 // "modelId" 10554 // ], 10555 // "parameters": { 10556 // "datasetId": { 10557 // "description": "Required. Dataset ID of the requested model.", 10558 // "location": "path", 10559 // "pattern": "^[^/]+$", 10560 // "required": true, 10561 // "type": "string" 10562 // }, 10563 // "modelId": { 10564 // "description": "Required. Model ID of the requested model.", 10565 // "location": "path", 10566 // "pattern": "^[^/]+$", 10567 // "required": true, 10568 // "type": "string" 10569 // }, 10570 // "projectId": { 10571 // "description": "Required. Project ID of the requested model.", 10572 // "location": "path", 10573 // "pattern": "^[^/]+$", 10574 // "required": true, 10575 // "type": "string" 10576 // } 10577 // }, 10578 // "path": "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}", 10579 // "response": { 10580 // "$ref": "Model" 10581 // }, 10582 // "scopes": [ 10583 // "https://www.googleapis.com/auth/bigquery", 10584 // "https://www.googleapis.com/auth/bigquery.readonly", 10585 // "https://www.googleapis.com/auth/cloud-platform", 10586 // "https://www.googleapis.com/auth/cloud-platform.read-only" 10587 // ] 10588 // } 10589 10590} 10591 10592// method id "bigquery.models.list": 10593 10594type ModelsListCall struct { 10595 s *Service 10596 projectId string 10597 datasetId string 10598 urlParams_ gensupport.URLParams 10599 ifNoneMatch_ string 10600 ctx_ context.Context 10601 header_ http.Header 10602} 10603 10604// List: Lists all models in the specified dataset. Requires the READER 10605// dataset role. 10606// 10607// - datasetId: Dataset ID of the models to list. 10608// - projectId: Project ID of the models to list. 10609func (r *ModelsService) List(projectId string, datasetId string) *ModelsListCall { 10610 c := &ModelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10611 c.projectId = projectId 10612 c.datasetId = datasetId 10613 return c 10614} 10615 10616// MaxResults sets the optional parameter "maxResults": The maximum 10617// number of results to return in a single response page. Leverage the 10618// page tokens to iterate through the entire collection. 10619func (c *ModelsListCall) MaxResults(maxResults int64) *ModelsListCall { 10620 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 10621 return c 10622} 10623 10624// PageToken sets the optional parameter "pageToken": Page token, 10625// returned by a previous call to request the next page of results 10626func (c *ModelsListCall) PageToken(pageToken string) *ModelsListCall { 10627 c.urlParams_.Set("pageToken", pageToken) 10628 return c 10629} 10630 10631// Fields allows partial responses to be retrieved. See 10632// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10633// for more information. 10634func (c *ModelsListCall) Fields(s ...googleapi.Field) *ModelsListCall { 10635 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10636 return c 10637} 10638 10639// IfNoneMatch sets the optional parameter which makes the operation 10640// fail if the object's ETag matches the given value. This is useful for 10641// getting updates only after the object has changed since the last 10642// request. Use googleapi.IsNotModified to check whether the response 10643// error from Do is the result of In-None-Match. 10644func (c *ModelsListCall) IfNoneMatch(entityTag string) *ModelsListCall { 10645 c.ifNoneMatch_ = entityTag 10646 return c 10647} 10648 10649// Context sets the context to be used in this call's Do method. Any 10650// pending HTTP request will be aborted if the provided context is 10651// canceled. 10652func (c *ModelsListCall) Context(ctx context.Context) *ModelsListCall { 10653 c.ctx_ = ctx 10654 return c 10655} 10656 10657// Header returns an http.Header that can be modified by the caller to 10658// add HTTP headers to the request. 10659func (c *ModelsListCall) Header() http.Header { 10660 if c.header_ == nil { 10661 c.header_ = make(http.Header) 10662 } 10663 return c.header_ 10664} 10665 10666func (c *ModelsListCall) doRequest(alt string) (*http.Response, error) { 10667 reqHeaders := make(http.Header) 10668 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10669 for k, v := range c.header_ { 10670 reqHeaders[k] = v 10671 } 10672 reqHeaders.Set("User-Agent", c.s.userAgent()) 10673 if c.ifNoneMatch_ != "" { 10674 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 10675 } 10676 var body io.Reader = nil 10677 c.urlParams_.Set("alt", alt) 10678 c.urlParams_.Set("prettyPrint", "false") 10679 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/models") 10680 urls += "?" + c.urlParams_.Encode() 10681 req, err := http.NewRequest("GET", urls, body) 10682 if err != nil { 10683 return nil, err 10684 } 10685 req.Header = reqHeaders 10686 googleapi.Expand(req.URL, map[string]string{ 10687 "projectId": c.projectId, 10688 "datasetId": c.datasetId, 10689 }) 10690 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10691} 10692 10693// Do executes the "bigquery.models.list" call. 10694// Exactly one of *ListModelsResponse or error will be non-nil. Any 10695// non-2xx status code is an error. Response headers are in either 10696// *ListModelsResponse.ServerResponse.Header or (if a response was 10697// returned at all) in error.(*googleapi.Error).Header. Use 10698// googleapi.IsNotModified to check whether the returned error was 10699// because http.StatusNotModified was returned. 10700func (c *ModelsListCall) Do(opts ...googleapi.CallOption) (*ListModelsResponse, error) { 10701 gensupport.SetOptions(c.urlParams_, opts...) 10702 res, err := c.doRequest("json") 10703 if res != nil && res.StatusCode == http.StatusNotModified { 10704 if res.Body != nil { 10705 res.Body.Close() 10706 } 10707 return nil, &googleapi.Error{ 10708 Code: res.StatusCode, 10709 Header: res.Header, 10710 } 10711 } 10712 if err != nil { 10713 return nil, err 10714 } 10715 defer googleapi.CloseBody(res) 10716 if err := googleapi.CheckResponse(res); err != nil { 10717 return nil, err 10718 } 10719 ret := &ListModelsResponse{ 10720 ServerResponse: googleapi.ServerResponse{ 10721 Header: res.Header, 10722 HTTPStatusCode: res.StatusCode, 10723 }, 10724 } 10725 target := &ret 10726 if err := gensupport.DecodeResponse(target, res); err != nil { 10727 return nil, err 10728 } 10729 return ret, nil 10730 // { 10731 // "description": "Lists all models in the specified dataset. Requires the READER dataset role.", 10732 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/models", 10733 // "httpMethod": "GET", 10734 // "id": "bigquery.models.list", 10735 // "parameterOrder": [ 10736 // "projectId", 10737 // "datasetId" 10738 // ], 10739 // "parameters": { 10740 // "datasetId": { 10741 // "description": "Required. Dataset ID of the models to list.", 10742 // "location": "path", 10743 // "pattern": "^[^/]+$", 10744 // "required": true, 10745 // "type": "string" 10746 // }, 10747 // "maxResults": { 10748 // "description": "The maximum number of results to return in a single response page. Leverage the page tokens to iterate through the entire collection.", 10749 // "format": "uint32", 10750 // "location": "query", 10751 // "type": "integer" 10752 // }, 10753 // "pageToken": { 10754 // "description": "Page token, returned by a previous call to request the next page of results", 10755 // "location": "query", 10756 // "type": "string" 10757 // }, 10758 // "projectId": { 10759 // "description": "Required. Project ID of the models to list.", 10760 // "location": "path", 10761 // "pattern": "^[^/]+$", 10762 // "required": true, 10763 // "type": "string" 10764 // } 10765 // }, 10766 // "path": "projects/{+projectId}/datasets/{+datasetId}/models", 10767 // "response": { 10768 // "$ref": "ListModelsResponse" 10769 // }, 10770 // "scopes": [ 10771 // "https://www.googleapis.com/auth/bigquery", 10772 // "https://www.googleapis.com/auth/bigquery.readonly", 10773 // "https://www.googleapis.com/auth/cloud-platform", 10774 // "https://www.googleapis.com/auth/cloud-platform.read-only" 10775 // ] 10776 // } 10777 10778} 10779 10780// Pages invokes f for each page of results. 10781// A non-nil error returned from f will halt the iteration. 10782// The provided context supersedes any context provided to the Context method. 10783func (c *ModelsListCall) Pages(ctx context.Context, f func(*ListModelsResponse) error) error { 10784 c.ctx_ = ctx 10785 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 10786 for { 10787 x, err := c.Do() 10788 if err != nil { 10789 return err 10790 } 10791 if err := f(x); err != nil { 10792 return err 10793 } 10794 if x.NextPageToken == "" { 10795 return nil 10796 } 10797 c.PageToken(x.NextPageToken) 10798 } 10799} 10800 10801// method id "bigquery.models.patch": 10802 10803type ModelsPatchCall struct { 10804 s *Service 10805 projectId string 10806 datasetId string 10807 modelId string 10808 model *Model 10809 urlParams_ gensupport.URLParams 10810 ctx_ context.Context 10811 header_ http.Header 10812} 10813 10814// Patch: Patch specific fields in the specified model. 10815// 10816// - datasetId: Dataset ID of the model to patch. 10817// - modelId: Model ID of the model to patch. 10818// - projectId: Project ID of the model to patch. 10819func (r *ModelsService) Patch(projectId string, datasetId string, modelId string, model *Model) *ModelsPatchCall { 10820 c := &ModelsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10821 c.projectId = projectId 10822 c.datasetId = datasetId 10823 c.modelId = modelId 10824 c.model = model 10825 return c 10826} 10827 10828// Fields allows partial responses to be retrieved. See 10829// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10830// for more information. 10831func (c *ModelsPatchCall) Fields(s ...googleapi.Field) *ModelsPatchCall { 10832 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10833 return c 10834} 10835 10836// Context sets the context to be used in this call's Do method. Any 10837// pending HTTP request will be aborted if the provided context is 10838// canceled. 10839func (c *ModelsPatchCall) Context(ctx context.Context) *ModelsPatchCall { 10840 c.ctx_ = ctx 10841 return c 10842} 10843 10844// Header returns an http.Header that can be modified by the caller to 10845// add HTTP headers to the request. 10846func (c *ModelsPatchCall) Header() http.Header { 10847 if c.header_ == nil { 10848 c.header_ = make(http.Header) 10849 } 10850 return c.header_ 10851} 10852 10853func (c *ModelsPatchCall) doRequest(alt string) (*http.Response, error) { 10854 reqHeaders := make(http.Header) 10855 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 10856 for k, v := range c.header_ { 10857 reqHeaders[k] = v 10858 } 10859 reqHeaders.Set("User-Agent", c.s.userAgent()) 10860 var body io.Reader = nil 10861 body, err := googleapi.WithoutDataWrapper.JSONReader(c.model) 10862 if err != nil { 10863 return nil, err 10864 } 10865 reqHeaders.Set("Content-Type", "application/json") 10866 c.urlParams_.Set("alt", alt) 10867 c.urlParams_.Set("prettyPrint", "false") 10868 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}") 10869 urls += "?" + c.urlParams_.Encode() 10870 req, err := http.NewRequest("PATCH", urls, body) 10871 if err != nil { 10872 return nil, err 10873 } 10874 req.Header = reqHeaders 10875 googleapi.Expand(req.URL, map[string]string{ 10876 "projectId": c.projectId, 10877 "datasetId": c.datasetId, 10878 "modelId": c.modelId, 10879 }) 10880 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10881} 10882 10883// Do executes the "bigquery.models.patch" call. 10884// Exactly one of *Model or error will be non-nil. Any non-2xx status 10885// code is an error. Response headers are in either 10886// *Model.ServerResponse.Header or (if a response was returned at all) 10887// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 10888// check whether the returned error was because http.StatusNotModified 10889// was returned. 10890func (c *ModelsPatchCall) Do(opts ...googleapi.CallOption) (*Model, error) { 10891 gensupport.SetOptions(c.urlParams_, opts...) 10892 res, err := c.doRequest("json") 10893 if res != nil && res.StatusCode == http.StatusNotModified { 10894 if res.Body != nil { 10895 res.Body.Close() 10896 } 10897 return nil, &googleapi.Error{ 10898 Code: res.StatusCode, 10899 Header: res.Header, 10900 } 10901 } 10902 if err != nil { 10903 return nil, err 10904 } 10905 defer googleapi.CloseBody(res) 10906 if err := googleapi.CheckResponse(res); err != nil { 10907 return nil, err 10908 } 10909 ret := &Model{ 10910 ServerResponse: googleapi.ServerResponse{ 10911 Header: res.Header, 10912 HTTPStatusCode: res.StatusCode, 10913 }, 10914 } 10915 target := &ret 10916 if err := gensupport.DecodeResponse(target, res); err != nil { 10917 return nil, err 10918 } 10919 return ret, nil 10920 // { 10921 // "description": "Patch specific fields in the specified model.", 10922 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/models/{modelsId}", 10923 // "httpMethod": "PATCH", 10924 // "id": "bigquery.models.patch", 10925 // "parameterOrder": [ 10926 // "projectId", 10927 // "datasetId", 10928 // "modelId" 10929 // ], 10930 // "parameters": { 10931 // "datasetId": { 10932 // "description": "Required. Dataset ID of the model to patch.", 10933 // "location": "path", 10934 // "pattern": "^[^/]+$", 10935 // "required": true, 10936 // "type": "string" 10937 // }, 10938 // "modelId": { 10939 // "description": "Required. Model ID of the model to patch.", 10940 // "location": "path", 10941 // "pattern": "^[^/]+$", 10942 // "required": true, 10943 // "type": "string" 10944 // }, 10945 // "projectId": { 10946 // "description": "Required. Project ID of the model to patch.", 10947 // "location": "path", 10948 // "pattern": "^[^/]+$", 10949 // "required": true, 10950 // "type": "string" 10951 // } 10952 // }, 10953 // "path": "projects/{+projectId}/datasets/{+datasetId}/models/{+modelId}", 10954 // "request": { 10955 // "$ref": "Model" 10956 // }, 10957 // "response": { 10958 // "$ref": "Model" 10959 // }, 10960 // "scopes": [ 10961 // "https://www.googleapis.com/auth/bigquery", 10962 // "https://www.googleapis.com/auth/cloud-platform" 10963 // ] 10964 // } 10965 10966} 10967 10968// method id "bigquery.projects.getServiceAccount": 10969 10970type ProjectsGetServiceAccountCall struct { 10971 s *Service 10972 projectId string 10973 urlParams_ gensupport.URLParams 10974 ifNoneMatch_ string 10975 ctx_ context.Context 10976 header_ http.Header 10977} 10978 10979// GetServiceAccount: Returns the email address of the service account 10980// for your project used for interactions with Google Cloud KMS. 10981// 10982// - projectId: Project ID for which the service account is requested. 10983func (r *ProjectsService) GetServiceAccount(projectId string) *ProjectsGetServiceAccountCall { 10984 c := &ProjectsGetServiceAccountCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10985 c.projectId = projectId 10986 return c 10987} 10988 10989// Fields allows partial responses to be retrieved. See 10990// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 10991// for more information. 10992func (c *ProjectsGetServiceAccountCall) Fields(s ...googleapi.Field) *ProjectsGetServiceAccountCall { 10993 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10994 return c 10995} 10996 10997// IfNoneMatch sets the optional parameter which makes the operation 10998// fail if the object's ETag matches the given value. This is useful for 10999// getting updates only after the object has changed since the last 11000// request. Use googleapi.IsNotModified to check whether the response 11001// error from Do is the result of In-None-Match. 11002func (c *ProjectsGetServiceAccountCall) IfNoneMatch(entityTag string) *ProjectsGetServiceAccountCall { 11003 c.ifNoneMatch_ = entityTag 11004 return c 11005} 11006 11007// Context sets the context to be used in this call's Do method. Any 11008// pending HTTP request will be aborted if the provided context is 11009// canceled. 11010func (c *ProjectsGetServiceAccountCall) Context(ctx context.Context) *ProjectsGetServiceAccountCall { 11011 c.ctx_ = ctx 11012 return c 11013} 11014 11015// Header returns an http.Header that can be modified by the caller to 11016// add HTTP headers to the request. 11017func (c *ProjectsGetServiceAccountCall) Header() http.Header { 11018 if c.header_ == nil { 11019 c.header_ = make(http.Header) 11020 } 11021 return c.header_ 11022} 11023 11024func (c *ProjectsGetServiceAccountCall) doRequest(alt string) (*http.Response, error) { 11025 reqHeaders := make(http.Header) 11026 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11027 for k, v := range c.header_ { 11028 reqHeaders[k] = v 11029 } 11030 reqHeaders.Set("User-Agent", c.s.userAgent()) 11031 if c.ifNoneMatch_ != "" { 11032 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11033 } 11034 var body io.Reader = nil 11035 c.urlParams_.Set("alt", alt) 11036 c.urlParams_.Set("prettyPrint", "false") 11037 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/serviceAccount") 11038 urls += "?" + c.urlParams_.Encode() 11039 req, err := http.NewRequest("GET", urls, body) 11040 if err != nil { 11041 return nil, err 11042 } 11043 req.Header = reqHeaders 11044 googleapi.Expand(req.URL, map[string]string{ 11045 "projectId": c.projectId, 11046 }) 11047 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11048} 11049 11050// Do executes the "bigquery.projects.getServiceAccount" call. 11051// Exactly one of *GetServiceAccountResponse or error will be non-nil. 11052// Any non-2xx status code is an error. Response headers are in either 11053// *GetServiceAccountResponse.ServerResponse.Header or (if a response 11054// was returned at all) in error.(*googleapi.Error).Header. Use 11055// googleapi.IsNotModified to check whether the returned error was 11056// because http.StatusNotModified was returned. 11057func (c *ProjectsGetServiceAccountCall) Do(opts ...googleapi.CallOption) (*GetServiceAccountResponse, error) { 11058 gensupport.SetOptions(c.urlParams_, opts...) 11059 res, err := c.doRequest("json") 11060 if res != nil && res.StatusCode == http.StatusNotModified { 11061 if res.Body != nil { 11062 res.Body.Close() 11063 } 11064 return nil, &googleapi.Error{ 11065 Code: res.StatusCode, 11066 Header: res.Header, 11067 } 11068 } 11069 if err != nil { 11070 return nil, err 11071 } 11072 defer googleapi.CloseBody(res) 11073 if err := googleapi.CheckResponse(res); err != nil { 11074 return nil, err 11075 } 11076 ret := &GetServiceAccountResponse{ 11077 ServerResponse: googleapi.ServerResponse{ 11078 Header: res.Header, 11079 HTTPStatusCode: res.StatusCode, 11080 }, 11081 } 11082 target := &ret 11083 if err := gensupport.DecodeResponse(target, res); err != nil { 11084 return nil, err 11085 } 11086 return ret, nil 11087 // { 11088 // "description": "Returns the email address of the service account for your project used for interactions with Google Cloud KMS.", 11089 // "httpMethod": "GET", 11090 // "id": "bigquery.projects.getServiceAccount", 11091 // "parameterOrder": [ 11092 // "projectId" 11093 // ], 11094 // "parameters": { 11095 // "projectId": { 11096 // "description": "Project ID for which the service account is requested.", 11097 // "location": "path", 11098 // "required": true, 11099 // "type": "string" 11100 // } 11101 // }, 11102 // "path": "projects/{projectId}/serviceAccount", 11103 // "response": { 11104 // "$ref": "GetServiceAccountResponse" 11105 // }, 11106 // "scopes": [ 11107 // "https://www.googleapis.com/auth/bigquery", 11108 // "https://www.googleapis.com/auth/cloud-platform", 11109 // "https://www.googleapis.com/auth/cloud-platform.read-only" 11110 // ] 11111 // } 11112 11113} 11114 11115// method id "bigquery.projects.list": 11116 11117type ProjectsListCall struct { 11118 s *Service 11119 urlParams_ gensupport.URLParams 11120 ifNoneMatch_ string 11121 ctx_ context.Context 11122 header_ http.Header 11123} 11124 11125// List: Lists all projects to which you have been granted any project 11126// role. 11127func (r *ProjectsService) List() *ProjectsListCall { 11128 c := &ProjectsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11129 return c 11130} 11131 11132// MaxResults sets the optional parameter "maxResults": Maximum number 11133// of results to return 11134func (c *ProjectsListCall) MaxResults(maxResults int64) *ProjectsListCall { 11135 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 11136 return c 11137} 11138 11139// PageToken sets the optional parameter "pageToken": Page token, 11140// returned by a previous call, to request the next page of results 11141func (c *ProjectsListCall) PageToken(pageToken string) *ProjectsListCall { 11142 c.urlParams_.Set("pageToken", pageToken) 11143 return c 11144} 11145 11146// Fields allows partial responses to be retrieved. See 11147// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11148// for more information. 11149func (c *ProjectsListCall) Fields(s ...googleapi.Field) *ProjectsListCall { 11150 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11151 return c 11152} 11153 11154// IfNoneMatch sets the optional parameter which makes the operation 11155// fail if the object's ETag matches the given value. This is useful for 11156// getting updates only after the object has changed since the last 11157// request. Use googleapi.IsNotModified to check whether the response 11158// error from Do is the result of In-None-Match. 11159func (c *ProjectsListCall) IfNoneMatch(entityTag string) *ProjectsListCall { 11160 c.ifNoneMatch_ = entityTag 11161 return c 11162} 11163 11164// Context sets the context to be used in this call's Do method. Any 11165// pending HTTP request will be aborted if the provided context is 11166// canceled. 11167func (c *ProjectsListCall) Context(ctx context.Context) *ProjectsListCall { 11168 c.ctx_ = ctx 11169 return c 11170} 11171 11172// Header returns an http.Header that can be modified by the caller to 11173// add HTTP headers to the request. 11174func (c *ProjectsListCall) Header() http.Header { 11175 if c.header_ == nil { 11176 c.header_ = make(http.Header) 11177 } 11178 return c.header_ 11179} 11180 11181func (c *ProjectsListCall) doRequest(alt string) (*http.Response, error) { 11182 reqHeaders := make(http.Header) 11183 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11184 for k, v := range c.header_ { 11185 reqHeaders[k] = v 11186 } 11187 reqHeaders.Set("User-Agent", c.s.userAgent()) 11188 if c.ifNoneMatch_ != "" { 11189 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11190 } 11191 var body io.Reader = nil 11192 c.urlParams_.Set("alt", alt) 11193 c.urlParams_.Set("prettyPrint", "false") 11194 urls := googleapi.ResolveRelative(c.s.BasePath, "projects") 11195 urls += "?" + c.urlParams_.Encode() 11196 req, err := http.NewRequest("GET", urls, body) 11197 if err != nil { 11198 return nil, err 11199 } 11200 req.Header = reqHeaders 11201 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11202} 11203 11204// Do executes the "bigquery.projects.list" call. 11205// Exactly one of *ProjectList or error will be non-nil. Any non-2xx 11206// status code is an error. Response headers are in either 11207// *ProjectList.ServerResponse.Header or (if a response was returned at 11208// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 11209// to check whether the returned error was because 11210// http.StatusNotModified was returned. 11211func (c *ProjectsListCall) Do(opts ...googleapi.CallOption) (*ProjectList, error) { 11212 gensupport.SetOptions(c.urlParams_, opts...) 11213 res, err := c.doRequest("json") 11214 if res != nil && res.StatusCode == http.StatusNotModified { 11215 if res.Body != nil { 11216 res.Body.Close() 11217 } 11218 return nil, &googleapi.Error{ 11219 Code: res.StatusCode, 11220 Header: res.Header, 11221 } 11222 } 11223 if err != nil { 11224 return nil, err 11225 } 11226 defer googleapi.CloseBody(res) 11227 if err := googleapi.CheckResponse(res); err != nil { 11228 return nil, err 11229 } 11230 ret := &ProjectList{ 11231 ServerResponse: googleapi.ServerResponse{ 11232 Header: res.Header, 11233 HTTPStatusCode: res.StatusCode, 11234 }, 11235 } 11236 target := &ret 11237 if err := gensupport.DecodeResponse(target, res); err != nil { 11238 return nil, err 11239 } 11240 return ret, nil 11241 // { 11242 // "description": "Lists all projects to which you have been granted any project role.", 11243 // "httpMethod": "GET", 11244 // "id": "bigquery.projects.list", 11245 // "parameters": { 11246 // "maxResults": { 11247 // "description": "Maximum number of results to return", 11248 // "format": "uint32", 11249 // "location": "query", 11250 // "type": "integer" 11251 // }, 11252 // "pageToken": { 11253 // "description": "Page token, returned by a previous call, to request the next page of results", 11254 // "location": "query", 11255 // "type": "string" 11256 // } 11257 // }, 11258 // "path": "projects", 11259 // "response": { 11260 // "$ref": "ProjectList" 11261 // }, 11262 // "scopes": [ 11263 // "https://www.googleapis.com/auth/bigquery", 11264 // "https://www.googleapis.com/auth/cloud-platform", 11265 // "https://www.googleapis.com/auth/cloud-platform.read-only" 11266 // ] 11267 // } 11268 11269} 11270 11271// Pages invokes f for each page of results. 11272// A non-nil error returned from f will halt the iteration. 11273// The provided context supersedes any context provided to the Context method. 11274func (c *ProjectsListCall) Pages(ctx context.Context, f func(*ProjectList) error) error { 11275 c.ctx_ = ctx 11276 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 11277 for { 11278 x, err := c.Do() 11279 if err != nil { 11280 return err 11281 } 11282 if err := f(x); err != nil { 11283 return err 11284 } 11285 if x.NextPageToken == "" { 11286 return nil 11287 } 11288 c.PageToken(x.NextPageToken) 11289 } 11290} 11291 11292// method id "bigquery.routines.delete": 11293 11294type RoutinesDeleteCall struct { 11295 s *Service 11296 projectId string 11297 datasetId string 11298 routineId string 11299 urlParams_ gensupport.URLParams 11300 ctx_ context.Context 11301 header_ http.Header 11302} 11303 11304// Delete: Deletes the routine specified by routineId from the dataset. 11305// 11306// - datasetId: Dataset ID of the routine to delete. 11307// - projectId: Project ID of the routine to delete. 11308// - routineId: Routine ID of the routine to delete. 11309func (r *RoutinesService) Delete(projectId string, datasetId string, routineId string) *RoutinesDeleteCall { 11310 c := &RoutinesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11311 c.projectId = projectId 11312 c.datasetId = datasetId 11313 c.routineId = routineId 11314 return c 11315} 11316 11317// Fields allows partial responses to be retrieved. See 11318// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11319// for more information. 11320func (c *RoutinesDeleteCall) Fields(s ...googleapi.Field) *RoutinesDeleteCall { 11321 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11322 return c 11323} 11324 11325// Context sets the context to be used in this call's Do method. Any 11326// pending HTTP request will be aborted if the provided context is 11327// canceled. 11328func (c *RoutinesDeleteCall) Context(ctx context.Context) *RoutinesDeleteCall { 11329 c.ctx_ = ctx 11330 return c 11331} 11332 11333// Header returns an http.Header that can be modified by the caller to 11334// add HTTP headers to the request. 11335func (c *RoutinesDeleteCall) Header() http.Header { 11336 if c.header_ == nil { 11337 c.header_ = make(http.Header) 11338 } 11339 return c.header_ 11340} 11341 11342func (c *RoutinesDeleteCall) doRequest(alt string) (*http.Response, error) { 11343 reqHeaders := make(http.Header) 11344 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11345 for k, v := range c.header_ { 11346 reqHeaders[k] = v 11347 } 11348 reqHeaders.Set("User-Agent", c.s.userAgent()) 11349 var body io.Reader = nil 11350 c.urlParams_.Set("alt", alt) 11351 c.urlParams_.Set("prettyPrint", "false") 11352 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}") 11353 urls += "?" + c.urlParams_.Encode() 11354 req, err := http.NewRequest("DELETE", urls, body) 11355 if err != nil { 11356 return nil, err 11357 } 11358 req.Header = reqHeaders 11359 googleapi.Expand(req.URL, map[string]string{ 11360 "projectId": c.projectId, 11361 "datasetId": c.datasetId, 11362 "routineId": c.routineId, 11363 }) 11364 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11365} 11366 11367// Do executes the "bigquery.routines.delete" call. 11368func (c *RoutinesDeleteCall) Do(opts ...googleapi.CallOption) error { 11369 gensupport.SetOptions(c.urlParams_, opts...) 11370 res, err := c.doRequest("json") 11371 if err != nil { 11372 return err 11373 } 11374 defer googleapi.CloseBody(res) 11375 if err := googleapi.CheckResponse(res); err != nil { 11376 return err 11377 } 11378 return nil 11379 // { 11380 // "description": "Deletes the routine specified by routineId from the dataset.", 11381 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines/{routinesId}", 11382 // "httpMethod": "DELETE", 11383 // "id": "bigquery.routines.delete", 11384 // "parameterOrder": [ 11385 // "projectId", 11386 // "datasetId", 11387 // "routineId" 11388 // ], 11389 // "parameters": { 11390 // "datasetId": { 11391 // "description": "Required. Dataset ID of the routine to delete", 11392 // "location": "path", 11393 // "pattern": "^[^/]+$", 11394 // "required": true, 11395 // "type": "string" 11396 // }, 11397 // "projectId": { 11398 // "description": "Required. Project ID of the routine to delete", 11399 // "location": "path", 11400 // "pattern": "^[^/]+$", 11401 // "required": true, 11402 // "type": "string" 11403 // }, 11404 // "routineId": { 11405 // "description": "Required. Routine ID of the routine to delete", 11406 // "location": "path", 11407 // "pattern": "^[^/]+$", 11408 // "required": true, 11409 // "type": "string" 11410 // } 11411 // }, 11412 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}", 11413 // "scopes": [ 11414 // "https://www.googleapis.com/auth/bigquery", 11415 // "https://www.googleapis.com/auth/cloud-platform" 11416 // ] 11417 // } 11418 11419} 11420 11421// method id "bigquery.routines.get": 11422 11423type RoutinesGetCall struct { 11424 s *Service 11425 projectId string 11426 datasetId string 11427 routineId string 11428 urlParams_ gensupport.URLParams 11429 ifNoneMatch_ string 11430 ctx_ context.Context 11431 header_ http.Header 11432} 11433 11434// Get: Gets the specified routine resource by routine ID. 11435// 11436// - datasetId: Dataset ID of the requested routine. 11437// - projectId: Project ID of the requested routine. 11438// - routineId: Routine ID of the requested routine. 11439func (r *RoutinesService) Get(projectId string, datasetId string, routineId string) *RoutinesGetCall { 11440 c := &RoutinesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11441 c.projectId = projectId 11442 c.datasetId = datasetId 11443 c.routineId = routineId 11444 return c 11445} 11446 11447// ReadMask sets the optional parameter "readMask": If set, only the 11448// Routine fields in the field mask are returned in the response. If 11449// unset, all Routine fields are returned. 11450func (c *RoutinesGetCall) ReadMask(readMask string) *RoutinesGetCall { 11451 c.urlParams_.Set("readMask", readMask) 11452 return c 11453} 11454 11455// Fields allows partial responses to be retrieved. See 11456// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11457// for more information. 11458func (c *RoutinesGetCall) Fields(s ...googleapi.Field) *RoutinesGetCall { 11459 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11460 return c 11461} 11462 11463// IfNoneMatch sets the optional parameter which makes the operation 11464// fail if the object's ETag matches the given value. This is useful for 11465// getting updates only after the object has changed since the last 11466// request. Use googleapi.IsNotModified to check whether the response 11467// error from Do is the result of In-None-Match. 11468func (c *RoutinesGetCall) IfNoneMatch(entityTag string) *RoutinesGetCall { 11469 c.ifNoneMatch_ = entityTag 11470 return c 11471} 11472 11473// Context sets the context to be used in this call's Do method. Any 11474// pending HTTP request will be aborted if the provided context is 11475// canceled. 11476func (c *RoutinesGetCall) Context(ctx context.Context) *RoutinesGetCall { 11477 c.ctx_ = ctx 11478 return c 11479} 11480 11481// Header returns an http.Header that can be modified by the caller to 11482// add HTTP headers to the request. 11483func (c *RoutinesGetCall) Header() http.Header { 11484 if c.header_ == nil { 11485 c.header_ = make(http.Header) 11486 } 11487 return c.header_ 11488} 11489 11490func (c *RoutinesGetCall) doRequest(alt string) (*http.Response, error) { 11491 reqHeaders := make(http.Header) 11492 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11493 for k, v := range c.header_ { 11494 reqHeaders[k] = v 11495 } 11496 reqHeaders.Set("User-Agent", c.s.userAgent()) 11497 if c.ifNoneMatch_ != "" { 11498 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11499 } 11500 var body io.Reader = nil 11501 c.urlParams_.Set("alt", alt) 11502 c.urlParams_.Set("prettyPrint", "false") 11503 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}") 11504 urls += "?" + c.urlParams_.Encode() 11505 req, err := http.NewRequest("GET", urls, body) 11506 if err != nil { 11507 return nil, err 11508 } 11509 req.Header = reqHeaders 11510 googleapi.Expand(req.URL, map[string]string{ 11511 "projectId": c.projectId, 11512 "datasetId": c.datasetId, 11513 "routineId": c.routineId, 11514 }) 11515 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11516} 11517 11518// Do executes the "bigquery.routines.get" call. 11519// Exactly one of *Routine or error will be non-nil. Any non-2xx status 11520// code is an error. Response headers are in either 11521// *Routine.ServerResponse.Header or (if a response was returned at all) 11522// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 11523// check whether the returned error was because http.StatusNotModified 11524// was returned. 11525func (c *RoutinesGetCall) Do(opts ...googleapi.CallOption) (*Routine, error) { 11526 gensupport.SetOptions(c.urlParams_, opts...) 11527 res, err := c.doRequest("json") 11528 if res != nil && res.StatusCode == http.StatusNotModified { 11529 if res.Body != nil { 11530 res.Body.Close() 11531 } 11532 return nil, &googleapi.Error{ 11533 Code: res.StatusCode, 11534 Header: res.Header, 11535 } 11536 } 11537 if err != nil { 11538 return nil, err 11539 } 11540 defer googleapi.CloseBody(res) 11541 if err := googleapi.CheckResponse(res); err != nil { 11542 return nil, err 11543 } 11544 ret := &Routine{ 11545 ServerResponse: googleapi.ServerResponse{ 11546 Header: res.Header, 11547 HTTPStatusCode: res.StatusCode, 11548 }, 11549 } 11550 target := &ret 11551 if err := gensupport.DecodeResponse(target, res); err != nil { 11552 return nil, err 11553 } 11554 return ret, nil 11555 // { 11556 // "description": "Gets the specified routine resource by routine ID.", 11557 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines/{routinesId}", 11558 // "httpMethod": "GET", 11559 // "id": "bigquery.routines.get", 11560 // "parameterOrder": [ 11561 // "projectId", 11562 // "datasetId", 11563 // "routineId" 11564 // ], 11565 // "parameters": { 11566 // "datasetId": { 11567 // "description": "Required. Dataset ID of the requested routine", 11568 // "location": "path", 11569 // "pattern": "^[^/]+$", 11570 // "required": true, 11571 // "type": "string" 11572 // }, 11573 // "projectId": { 11574 // "description": "Required. Project ID of the requested routine", 11575 // "location": "path", 11576 // "pattern": "^[^/]+$", 11577 // "required": true, 11578 // "type": "string" 11579 // }, 11580 // "readMask": { 11581 // "description": "If set, only the Routine fields in the field mask are returned in the response. If unset, all Routine fields are returned.", 11582 // "format": "google-fieldmask", 11583 // "location": "query", 11584 // "type": "string" 11585 // }, 11586 // "routineId": { 11587 // "description": "Required. Routine ID of the requested routine", 11588 // "location": "path", 11589 // "pattern": "^[^/]+$", 11590 // "required": true, 11591 // "type": "string" 11592 // } 11593 // }, 11594 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}", 11595 // "response": { 11596 // "$ref": "Routine" 11597 // }, 11598 // "scopes": [ 11599 // "https://www.googleapis.com/auth/bigquery", 11600 // "https://www.googleapis.com/auth/bigquery.readonly", 11601 // "https://www.googleapis.com/auth/cloud-platform", 11602 // "https://www.googleapis.com/auth/cloud-platform.read-only" 11603 // ] 11604 // } 11605 11606} 11607 11608// method id "bigquery.routines.insert": 11609 11610type RoutinesInsertCall struct { 11611 s *Service 11612 projectId string 11613 datasetId string 11614 routine *Routine 11615 urlParams_ gensupport.URLParams 11616 ctx_ context.Context 11617 header_ http.Header 11618} 11619 11620// Insert: Creates a new routine in the dataset. 11621// 11622// - datasetId: Dataset ID of the new routine. 11623// - projectId: Project ID of the new routine. 11624func (r *RoutinesService) Insert(projectId string, datasetId string, routine *Routine) *RoutinesInsertCall { 11625 c := &RoutinesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11626 c.projectId = projectId 11627 c.datasetId = datasetId 11628 c.routine = routine 11629 return c 11630} 11631 11632// Fields allows partial responses to be retrieved. See 11633// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11634// for more information. 11635func (c *RoutinesInsertCall) Fields(s ...googleapi.Field) *RoutinesInsertCall { 11636 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11637 return c 11638} 11639 11640// Context sets the context to be used in this call's Do method. Any 11641// pending HTTP request will be aborted if the provided context is 11642// canceled. 11643func (c *RoutinesInsertCall) Context(ctx context.Context) *RoutinesInsertCall { 11644 c.ctx_ = ctx 11645 return c 11646} 11647 11648// Header returns an http.Header that can be modified by the caller to 11649// add HTTP headers to the request. 11650func (c *RoutinesInsertCall) Header() http.Header { 11651 if c.header_ == nil { 11652 c.header_ = make(http.Header) 11653 } 11654 return c.header_ 11655} 11656 11657func (c *RoutinesInsertCall) doRequest(alt string) (*http.Response, error) { 11658 reqHeaders := make(http.Header) 11659 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11660 for k, v := range c.header_ { 11661 reqHeaders[k] = v 11662 } 11663 reqHeaders.Set("User-Agent", c.s.userAgent()) 11664 var body io.Reader = nil 11665 body, err := googleapi.WithoutDataWrapper.JSONReader(c.routine) 11666 if err != nil { 11667 return nil, err 11668 } 11669 reqHeaders.Set("Content-Type", "application/json") 11670 c.urlParams_.Set("alt", alt) 11671 c.urlParams_.Set("prettyPrint", "false") 11672 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines") 11673 urls += "?" + c.urlParams_.Encode() 11674 req, err := http.NewRequest("POST", urls, body) 11675 if err != nil { 11676 return nil, err 11677 } 11678 req.Header = reqHeaders 11679 googleapi.Expand(req.URL, map[string]string{ 11680 "projectId": c.projectId, 11681 "datasetId": c.datasetId, 11682 }) 11683 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11684} 11685 11686// Do executes the "bigquery.routines.insert" call. 11687// Exactly one of *Routine or error will be non-nil. Any non-2xx status 11688// code is an error. Response headers are in either 11689// *Routine.ServerResponse.Header or (if a response was returned at all) 11690// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 11691// check whether the returned error was because http.StatusNotModified 11692// was returned. 11693func (c *RoutinesInsertCall) Do(opts ...googleapi.CallOption) (*Routine, error) { 11694 gensupport.SetOptions(c.urlParams_, opts...) 11695 res, err := c.doRequest("json") 11696 if res != nil && res.StatusCode == http.StatusNotModified { 11697 if res.Body != nil { 11698 res.Body.Close() 11699 } 11700 return nil, &googleapi.Error{ 11701 Code: res.StatusCode, 11702 Header: res.Header, 11703 } 11704 } 11705 if err != nil { 11706 return nil, err 11707 } 11708 defer googleapi.CloseBody(res) 11709 if err := googleapi.CheckResponse(res); err != nil { 11710 return nil, err 11711 } 11712 ret := &Routine{ 11713 ServerResponse: googleapi.ServerResponse{ 11714 Header: res.Header, 11715 HTTPStatusCode: res.StatusCode, 11716 }, 11717 } 11718 target := &ret 11719 if err := gensupport.DecodeResponse(target, res); err != nil { 11720 return nil, err 11721 } 11722 return ret, nil 11723 // { 11724 // "description": "Creates a new routine in the dataset.", 11725 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines", 11726 // "httpMethod": "POST", 11727 // "id": "bigquery.routines.insert", 11728 // "parameterOrder": [ 11729 // "projectId", 11730 // "datasetId" 11731 // ], 11732 // "parameters": { 11733 // "datasetId": { 11734 // "description": "Required. Dataset ID of the new routine", 11735 // "location": "path", 11736 // "pattern": "^[^/]+$", 11737 // "required": true, 11738 // "type": "string" 11739 // }, 11740 // "projectId": { 11741 // "description": "Required. Project ID of the new routine", 11742 // "location": "path", 11743 // "pattern": "^[^/]+$", 11744 // "required": true, 11745 // "type": "string" 11746 // } 11747 // }, 11748 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines", 11749 // "request": { 11750 // "$ref": "Routine" 11751 // }, 11752 // "response": { 11753 // "$ref": "Routine" 11754 // }, 11755 // "scopes": [ 11756 // "https://www.googleapis.com/auth/bigquery", 11757 // "https://www.googleapis.com/auth/cloud-platform" 11758 // ] 11759 // } 11760 11761} 11762 11763// method id "bigquery.routines.list": 11764 11765type RoutinesListCall struct { 11766 s *Service 11767 projectId string 11768 datasetId string 11769 urlParams_ gensupport.URLParams 11770 ifNoneMatch_ string 11771 ctx_ context.Context 11772 header_ http.Header 11773} 11774 11775// List: Lists all routines in the specified dataset. Requires the 11776// READER dataset role. 11777// 11778// - datasetId: Dataset ID of the routines to list. 11779// - projectId: Project ID of the routines to list. 11780func (r *RoutinesService) List(projectId string, datasetId string) *RoutinesListCall { 11781 c := &RoutinesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 11782 c.projectId = projectId 11783 c.datasetId = datasetId 11784 return c 11785} 11786 11787// Filter sets the optional parameter "filter": If set, then only the 11788// Routines matching this filter are returned. The current supported 11789// form is either "routine_type:" or "routineType:", where is a 11790// RoutineType enum. Example: "routineType:SCALAR_FUNCTION". 11791func (c *RoutinesListCall) Filter(filter string) *RoutinesListCall { 11792 c.urlParams_.Set("filter", filter) 11793 return c 11794} 11795 11796// MaxResults sets the optional parameter "maxResults": The maximum 11797// number of results to return in a single response page. Leverage the 11798// page tokens to iterate through the entire collection. 11799func (c *RoutinesListCall) MaxResults(maxResults int64) *RoutinesListCall { 11800 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 11801 return c 11802} 11803 11804// PageToken sets the optional parameter "pageToken": Page token, 11805// returned by a previous call, to request the next page of results 11806func (c *RoutinesListCall) PageToken(pageToken string) *RoutinesListCall { 11807 c.urlParams_.Set("pageToken", pageToken) 11808 return c 11809} 11810 11811// ReadMask sets the optional parameter "readMask": If set, then only 11812// the Routine fields in the field mask, as well as project_id, 11813// dataset_id and routine_id, are returned in the response. If unset, 11814// then the following Routine fields are returned: etag, project_id, 11815// dataset_id, routine_id, routine_type, creation_time, 11816// last_modified_time, and language. 11817func (c *RoutinesListCall) ReadMask(readMask string) *RoutinesListCall { 11818 c.urlParams_.Set("readMask", readMask) 11819 return c 11820} 11821 11822// Fields allows partial responses to be retrieved. See 11823// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 11824// for more information. 11825func (c *RoutinesListCall) Fields(s ...googleapi.Field) *RoutinesListCall { 11826 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 11827 return c 11828} 11829 11830// IfNoneMatch sets the optional parameter which makes the operation 11831// fail if the object's ETag matches the given value. This is useful for 11832// getting updates only after the object has changed since the last 11833// request. Use googleapi.IsNotModified to check whether the response 11834// error from Do is the result of In-None-Match. 11835func (c *RoutinesListCall) IfNoneMatch(entityTag string) *RoutinesListCall { 11836 c.ifNoneMatch_ = entityTag 11837 return c 11838} 11839 11840// Context sets the context to be used in this call's Do method. Any 11841// pending HTTP request will be aborted if the provided context is 11842// canceled. 11843func (c *RoutinesListCall) Context(ctx context.Context) *RoutinesListCall { 11844 c.ctx_ = ctx 11845 return c 11846} 11847 11848// Header returns an http.Header that can be modified by the caller to 11849// add HTTP headers to the request. 11850func (c *RoutinesListCall) Header() http.Header { 11851 if c.header_ == nil { 11852 c.header_ = make(http.Header) 11853 } 11854 return c.header_ 11855} 11856 11857func (c *RoutinesListCall) doRequest(alt string) (*http.Response, error) { 11858 reqHeaders := make(http.Header) 11859 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 11860 for k, v := range c.header_ { 11861 reqHeaders[k] = v 11862 } 11863 reqHeaders.Set("User-Agent", c.s.userAgent()) 11864 if c.ifNoneMatch_ != "" { 11865 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 11866 } 11867 var body io.Reader = nil 11868 c.urlParams_.Set("alt", alt) 11869 c.urlParams_.Set("prettyPrint", "false") 11870 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines") 11871 urls += "?" + c.urlParams_.Encode() 11872 req, err := http.NewRequest("GET", urls, body) 11873 if err != nil { 11874 return nil, err 11875 } 11876 req.Header = reqHeaders 11877 googleapi.Expand(req.URL, map[string]string{ 11878 "projectId": c.projectId, 11879 "datasetId": c.datasetId, 11880 }) 11881 return gensupport.SendRequest(c.ctx_, c.s.client, req) 11882} 11883 11884// Do executes the "bigquery.routines.list" call. 11885// Exactly one of *ListRoutinesResponse or error will be non-nil. Any 11886// non-2xx status code is an error. Response headers are in either 11887// *ListRoutinesResponse.ServerResponse.Header or (if a response was 11888// returned at all) in error.(*googleapi.Error).Header. Use 11889// googleapi.IsNotModified to check whether the returned error was 11890// because http.StatusNotModified was returned. 11891func (c *RoutinesListCall) Do(opts ...googleapi.CallOption) (*ListRoutinesResponse, error) { 11892 gensupport.SetOptions(c.urlParams_, opts...) 11893 res, err := c.doRequest("json") 11894 if res != nil && res.StatusCode == http.StatusNotModified { 11895 if res.Body != nil { 11896 res.Body.Close() 11897 } 11898 return nil, &googleapi.Error{ 11899 Code: res.StatusCode, 11900 Header: res.Header, 11901 } 11902 } 11903 if err != nil { 11904 return nil, err 11905 } 11906 defer googleapi.CloseBody(res) 11907 if err := googleapi.CheckResponse(res); err != nil { 11908 return nil, err 11909 } 11910 ret := &ListRoutinesResponse{ 11911 ServerResponse: googleapi.ServerResponse{ 11912 Header: res.Header, 11913 HTTPStatusCode: res.StatusCode, 11914 }, 11915 } 11916 target := &ret 11917 if err := gensupport.DecodeResponse(target, res); err != nil { 11918 return nil, err 11919 } 11920 return ret, nil 11921 // { 11922 // "description": "Lists all routines in the specified dataset. Requires the READER dataset role.", 11923 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines", 11924 // "httpMethod": "GET", 11925 // "id": "bigquery.routines.list", 11926 // "parameterOrder": [ 11927 // "projectId", 11928 // "datasetId" 11929 // ], 11930 // "parameters": { 11931 // "datasetId": { 11932 // "description": "Required. Dataset ID of the routines to list", 11933 // "location": "path", 11934 // "pattern": "^[^/]+$", 11935 // "required": true, 11936 // "type": "string" 11937 // }, 11938 // "filter": { 11939 // "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\".", 11940 // "location": "query", 11941 // "type": "string" 11942 // }, 11943 // "maxResults": { 11944 // "description": "The maximum number of results to return in a single response page. Leverage the page tokens to iterate through the entire collection.", 11945 // "format": "uint32", 11946 // "location": "query", 11947 // "type": "integer" 11948 // }, 11949 // "pageToken": { 11950 // "description": "Page token, returned by a previous call, to request the next page of results", 11951 // "location": "query", 11952 // "type": "string" 11953 // }, 11954 // "projectId": { 11955 // "description": "Required. Project ID of the routines to list", 11956 // "location": "path", 11957 // "pattern": "^[^/]+$", 11958 // "required": true, 11959 // "type": "string" 11960 // }, 11961 // "readMask": { 11962 // "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.", 11963 // "format": "google-fieldmask", 11964 // "location": "query", 11965 // "type": "string" 11966 // } 11967 // }, 11968 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines", 11969 // "response": { 11970 // "$ref": "ListRoutinesResponse" 11971 // }, 11972 // "scopes": [ 11973 // "https://www.googleapis.com/auth/bigquery", 11974 // "https://www.googleapis.com/auth/bigquery.readonly", 11975 // "https://www.googleapis.com/auth/cloud-platform", 11976 // "https://www.googleapis.com/auth/cloud-platform.read-only" 11977 // ] 11978 // } 11979 11980} 11981 11982// Pages invokes f for each page of results. 11983// A non-nil error returned from f will halt the iteration. 11984// The provided context supersedes any context provided to the Context method. 11985func (c *RoutinesListCall) Pages(ctx context.Context, f func(*ListRoutinesResponse) error) error { 11986 c.ctx_ = ctx 11987 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 11988 for { 11989 x, err := c.Do() 11990 if err != nil { 11991 return err 11992 } 11993 if err := f(x); err != nil { 11994 return err 11995 } 11996 if x.NextPageToken == "" { 11997 return nil 11998 } 11999 c.PageToken(x.NextPageToken) 12000 } 12001} 12002 12003// method id "bigquery.routines.update": 12004 12005type RoutinesUpdateCall struct { 12006 s *Service 12007 projectId string 12008 datasetId string 12009 routineId string 12010 routine *Routine 12011 urlParams_ gensupport.URLParams 12012 ctx_ context.Context 12013 header_ http.Header 12014} 12015 12016// Update: Updates information in an existing routine. The update method 12017// replaces the entire Routine resource. 12018// 12019// - datasetId: Dataset ID of the routine to update. 12020// - projectId: Project ID of the routine to update. 12021// - routineId: Routine ID of the routine to update. 12022func (r *RoutinesService) Update(projectId string, datasetId string, routineId string, routine *Routine) *RoutinesUpdateCall { 12023 c := &RoutinesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12024 c.projectId = projectId 12025 c.datasetId = datasetId 12026 c.routineId = routineId 12027 c.routine = routine 12028 return c 12029} 12030 12031// Fields allows partial responses to be retrieved. See 12032// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12033// for more information. 12034func (c *RoutinesUpdateCall) Fields(s ...googleapi.Field) *RoutinesUpdateCall { 12035 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12036 return c 12037} 12038 12039// Context sets the context to be used in this call's Do method. Any 12040// pending HTTP request will be aborted if the provided context is 12041// canceled. 12042func (c *RoutinesUpdateCall) Context(ctx context.Context) *RoutinesUpdateCall { 12043 c.ctx_ = ctx 12044 return c 12045} 12046 12047// Header returns an http.Header that can be modified by the caller to 12048// add HTTP headers to the request. 12049func (c *RoutinesUpdateCall) Header() http.Header { 12050 if c.header_ == nil { 12051 c.header_ = make(http.Header) 12052 } 12053 return c.header_ 12054} 12055 12056func (c *RoutinesUpdateCall) doRequest(alt string) (*http.Response, error) { 12057 reqHeaders := make(http.Header) 12058 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12059 for k, v := range c.header_ { 12060 reqHeaders[k] = v 12061 } 12062 reqHeaders.Set("User-Agent", c.s.userAgent()) 12063 var body io.Reader = nil 12064 body, err := googleapi.WithoutDataWrapper.JSONReader(c.routine) 12065 if err != nil { 12066 return nil, err 12067 } 12068 reqHeaders.Set("Content-Type", "application/json") 12069 c.urlParams_.Set("alt", alt) 12070 c.urlParams_.Set("prettyPrint", "false") 12071 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}") 12072 urls += "?" + c.urlParams_.Encode() 12073 req, err := http.NewRequest("PUT", urls, body) 12074 if err != nil { 12075 return nil, err 12076 } 12077 req.Header = reqHeaders 12078 googleapi.Expand(req.URL, map[string]string{ 12079 "projectId": c.projectId, 12080 "datasetId": c.datasetId, 12081 "routineId": c.routineId, 12082 }) 12083 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12084} 12085 12086// Do executes the "bigquery.routines.update" call. 12087// Exactly one of *Routine or error will be non-nil. Any non-2xx status 12088// code is an error. Response headers are in either 12089// *Routine.ServerResponse.Header or (if a response was returned at all) 12090// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12091// check whether the returned error was because http.StatusNotModified 12092// was returned. 12093func (c *RoutinesUpdateCall) Do(opts ...googleapi.CallOption) (*Routine, error) { 12094 gensupport.SetOptions(c.urlParams_, opts...) 12095 res, err := c.doRequest("json") 12096 if res != nil && res.StatusCode == http.StatusNotModified { 12097 if res.Body != nil { 12098 res.Body.Close() 12099 } 12100 return nil, &googleapi.Error{ 12101 Code: res.StatusCode, 12102 Header: res.Header, 12103 } 12104 } 12105 if err != nil { 12106 return nil, err 12107 } 12108 defer googleapi.CloseBody(res) 12109 if err := googleapi.CheckResponse(res); err != nil { 12110 return nil, err 12111 } 12112 ret := &Routine{ 12113 ServerResponse: googleapi.ServerResponse{ 12114 Header: res.Header, 12115 HTTPStatusCode: res.StatusCode, 12116 }, 12117 } 12118 target := &ret 12119 if err := gensupport.DecodeResponse(target, res); err != nil { 12120 return nil, err 12121 } 12122 return ret, nil 12123 // { 12124 // "description": "Updates information in an existing routine. The update method replaces the entire Routine resource.", 12125 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/routines/{routinesId}", 12126 // "httpMethod": "PUT", 12127 // "id": "bigquery.routines.update", 12128 // "parameterOrder": [ 12129 // "projectId", 12130 // "datasetId", 12131 // "routineId" 12132 // ], 12133 // "parameters": { 12134 // "datasetId": { 12135 // "description": "Required. Dataset ID of the routine to update", 12136 // "location": "path", 12137 // "pattern": "^[^/]+$", 12138 // "required": true, 12139 // "type": "string" 12140 // }, 12141 // "projectId": { 12142 // "description": "Required. Project ID of the routine to update", 12143 // "location": "path", 12144 // "pattern": "^[^/]+$", 12145 // "required": true, 12146 // "type": "string" 12147 // }, 12148 // "routineId": { 12149 // "description": "Required. Routine ID of the routine to update", 12150 // "location": "path", 12151 // "pattern": "^[^/]+$", 12152 // "required": true, 12153 // "type": "string" 12154 // } 12155 // }, 12156 // "path": "projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}", 12157 // "request": { 12158 // "$ref": "Routine" 12159 // }, 12160 // "response": { 12161 // "$ref": "Routine" 12162 // }, 12163 // "scopes": [ 12164 // "https://www.googleapis.com/auth/bigquery", 12165 // "https://www.googleapis.com/auth/cloud-platform" 12166 // ] 12167 // } 12168 12169} 12170 12171// method id "bigquery.rowAccessPolicies.getIamPolicy": 12172 12173type RowAccessPoliciesGetIamPolicyCall struct { 12174 s *Service 12175 resource string 12176 getiampolicyrequest *GetIamPolicyRequest 12177 urlParams_ gensupport.URLParams 12178 ctx_ context.Context 12179 header_ http.Header 12180} 12181 12182// GetIamPolicy: Gets the access control policy for a resource. Returns 12183// an empty policy if the resource exists and does not have a policy 12184// set. 12185// 12186// - resource: REQUIRED: The resource for which the policy is being 12187// requested. See the operation documentation for the appropriate 12188// value for this field. 12189func (r *RowAccessPoliciesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *RowAccessPoliciesGetIamPolicyCall { 12190 c := &RowAccessPoliciesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12191 c.resource = resource 12192 c.getiampolicyrequest = getiampolicyrequest 12193 return c 12194} 12195 12196// Fields allows partial responses to be retrieved. See 12197// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12198// for more information. 12199func (c *RowAccessPoliciesGetIamPolicyCall) Fields(s ...googleapi.Field) *RowAccessPoliciesGetIamPolicyCall { 12200 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12201 return c 12202} 12203 12204// Context sets the context to be used in this call's Do method. Any 12205// pending HTTP request will be aborted if the provided context is 12206// canceled. 12207func (c *RowAccessPoliciesGetIamPolicyCall) Context(ctx context.Context) *RowAccessPoliciesGetIamPolicyCall { 12208 c.ctx_ = ctx 12209 return c 12210} 12211 12212// Header returns an http.Header that can be modified by the caller to 12213// add HTTP headers to the request. 12214func (c *RowAccessPoliciesGetIamPolicyCall) Header() http.Header { 12215 if c.header_ == nil { 12216 c.header_ = make(http.Header) 12217 } 12218 return c.header_ 12219} 12220 12221func (c *RowAccessPoliciesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 12222 reqHeaders := make(http.Header) 12223 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12224 for k, v := range c.header_ { 12225 reqHeaders[k] = v 12226 } 12227 reqHeaders.Set("User-Agent", c.s.userAgent()) 12228 var body io.Reader = nil 12229 body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) 12230 if err != nil { 12231 return nil, err 12232 } 12233 reqHeaders.Set("Content-Type", "application/json") 12234 c.urlParams_.Set("alt", alt) 12235 c.urlParams_.Set("prettyPrint", "false") 12236 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:getIamPolicy") 12237 urls += "?" + c.urlParams_.Encode() 12238 req, err := http.NewRequest("POST", urls, body) 12239 if err != nil { 12240 return nil, err 12241 } 12242 req.Header = reqHeaders 12243 googleapi.Expand(req.URL, map[string]string{ 12244 "resource": c.resource, 12245 }) 12246 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12247} 12248 12249// Do executes the "bigquery.rowAccessPolicies.getIamPolicy" call. 12250// Exactly one of *Policy or error will be non-nil. Any non-2xx status 12251// code is an error. Response headers are in either 12252// *Policy.ServerResponse.Header or (if a response was returned at all) 12253// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12254// check whether the returned error was because http.StatusNotModified 12255// was returned. 12256func (c *RowAccessPoliciesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 12257 gensupport.SetOptions(c.urlParams_, opts...) 12258 res, err := c.doRequest("json") 12259 if res != nil && res.StatusCode == http.StatusNotModified { 12260 if res.Body != nil { 12261 res.Body.Close() 12262 } 12263 return nil, &googleapi.Error{ 12264 Code: res.StatusCode, 12265 Header: res.Header, 12266 } 12267 } 12268 if err != nil { 12269 return nil, err 12270 } 12271 defer googleapi.CloseBody(res) 12272 if err := googleapi.CheckResponse(res); err != nil { 12273 return nil, err 12274 } 12275 ret := &Policy{ 12276 ServerResponse: googleapi.ServerResponse{ 12277 Header: res.Header, 12278 HTTPStatusCode: res.StatusCode, 12279 }, 12280 } 12281 target := &ret 12282 if err := gensupport.DecodeResponse(target, res); err != nil { 12283 return nil, err 12284 } 12285 return ret, nil 12286 // { 12287 // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", 12288 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}/rowAccessPolicies/{rowAccessPoliciesId}:getIamPolicy", 12289 // "httpMethod": "POST", 12290 // "id": "bigquery.rowAccessPolicies.getIamPolicy", 12291 // "parameterOrder": [ 12292 // "resource" 12293 // ], 12294 // "parameters": { 12295 // "resource": { 12296 // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", 12297 // "location": "path", 12298 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+/rowAccessPolicies/[^/]+$", 12299 // "required": true, 12300 // "type": "string" 12301 // } 12302 // }, 12303 // "path": "{+resource}:getIamPolicy", 12304 // "request": { 12305 // "$ref": "GetIamPolicyRequest" 12306 // }, 12307 // "response": { 12308 // "$ref": "Policy" 12309 // }, 12310 // "scopes": [ 12311 // "https://www.googleapis.com/auth/bigquery", 12312 // "https://www.googleapis.com/auth/bigquery.readonly", 12313 // "https://www.googleapis.com/auth/cloud-platform", 12314 // "https://www.googleapis.com/auth/cloud-platform.read-only" 12315 // ] 12316 // } 12317 12318} 12319 12320// method id "bigquery.rowAccessPolicies.list": 12321 12322type RowAccessPoliciesListCall struct { 12323 s *Service 12324 projectId string 12325 datasetId string 12326 tableId string 12327 urlParams_ gensupport.URLParams 12328 ifNoneMatch_ string 12329 ctx_ context.Context 12330 header_ http.Header 12331} 12332 12333// List: Lists all row access policies on the specified table. 12334// 12335// - datasetId: Dataset ID of row access policies to list. 12336// - projectId: Project ID of the row access policies to list. 12337// - tableId: Table ID of the table to list row access policies. 12338func (r *RowAccessPoliciesService) List(projectId string, datasetId string, tableId string) *RowAccessPoliciesListCall { 12339 c := &RowAccessPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12340 c.projectId = projectId 12341 c.datasetId = datasetId 12342 c.tableId = tableId 12343 return c 12344} 12345 12346// PageSize sets the optional parameter "pageSize": The maximum number 12347// of results to return in a single response page. Leverage the page 12348// tokens to iterate through the entire collection. 12349func (c *RowAccessPoliciesListCall) PageSize(pageSize int64) *RowAccessPoliciesListCall { 12350 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 12351 return c 12352} 12353 12354// PageToken sets the optional parameter "pageToken": Page token, 12355// returned by a previous call, to request the next page of results. 12356func (c *RowAccessPoliciesListCall) PageToken(pageToken string) *RowAccessPoliciesListCall { 12357 c.urlParams_.Set("pageToken", pageToken) 12358 return c 12359} 12360 12361// Fields allows partial responses to be retrieved. See 12362// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12363// for more information. 12364func (c *RowAccessPoliciesListCall) Fields(s ...googleapi.Field) *RowAccessPoliciesListCall { 12365 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12366 return c 12367} 12368 12369// IfNoneMatch sets the optional parameter which makes the operation 12370// fail if the object's ETag matches the given value. This is useful for 12371// getting updates only after the object has changed since the last 12372// request. Use googleapi.IsNotModified to check whether the response 12373// error from Do is the result of In-None-Match. 12374func (c *RowAccessPoliciesListCall) IfNoneMatch(entityTag string) *RowAccessPoliciesListCall { 12375 c.ifNoneMatch_ = entityTag 12376 return c 12377} 12378 12379// Context sets the context to be used in this call's Do method. Any 12380// pending HTTP request will be aborted if the provided context is 12381// canceled. 12382func (c *RowAccessPoliciesListCall) Context(ctx context.Context) *RowAccessPoliciesListCall { 12383 c.ctx_ = ctx 12384 return c 12385} 12386 12387// Header returns an http.Header that can be modified by the caller to 12388// add HTTP headers to the request. 12389func (c *RowAccessPoliciesListCall) Header() http.Header { 12390 if c.header_ == nil { 12391 c.header_ = make(http.Header) 12392 } 12393 return c.header_ 12394} 12395 12396func (c *RowAccessPoliciesListCall) doRequest(alt string) (*http.Response, error) { 12397 reqHeaders := make(http.Header) 12398 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12399 for k, v := range c.header_ { 12400 reqHeaders[k] = v 12401 } 12402 reqHeaders.Set("User-Agent", c.s.userAgent()) 12403 if c.ifNoneMatch_ != "" { 12404 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 12405 } 12406 var body io.Reader = nil 12407 c.urlParams_.Set("alt", alt) 12408 c.urlParams_.Set("prettyPrint", "false") 12409 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{+projectId}/datasets/{+datasetId}/tables/{+tableId}/rowAccessPolicies") 12410 urls += "?" + c.urlParams_.Encode() 12411 req, err := http.NewRequest("GET", urls, body) 12412 if err != nil { 12413 return nil, err 12414 } 12415 req.Header = reqHeaders 12416 googleapi.Expand(req.URL, map[string]string{ 12417 "projectId": c.projectId, 12418 "datasetId": c.datasetId, 12419 "tableId": c.tableId, 12420 }) 12421 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12422} 12423 12424// Do executes the "bigquery.rowAccessPolicies.list" call. 12425// Exactly one of *ListRowAccessPoliciesResponse or error will be 12426// non-nil. Any non-2xx status code is an error. Response headers are in 12427// either *ListRowAccessPoliciesResponse.ServerResponse.Header or (if a 12428// response was returned at all) in error.(*googleapi.Error).Header. Use 12429// googleapi.IsNotModified to check whether the returned error was 12430// because http.StatusNotModified was returned. 12431func (c *RowAccessPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListRowAccessPoliciesResponse, error) { 12432 gensupport.SetOptions(c.urlParams_, opts...) 12433 res, err := c.doRequest("json") 12434 if res != nil && res.StatusCode == http.StatusNotModified { 12435 if res.Body != nil { 12436 res.Body.Close() 12437 } 12438 return nil, &googleapi.Error{ 12439 Code: res.StatusCode, 12440 Header: res.Header, 12441 } 12442 } 12443 if err != nil { 12444 return nil, err 12445 } 12446 defer googleapi.CloseBody(res) 12447 if err := googleapi.CheckResponse(res); err != nil { 12448 return nil, err 12449 } 12450 ret := &ListRowAccessPoliciesResponse{ 12451 ServerResponse: googleapi.ServerResponse{ 12452 Header: res.Header, 12453 HTTPStatusCode: res.StatusCode, 12454 }, 12455 } 12456 target := &ret 12457 if err := gensupport.DecodeResponse(target, res); err != nil { 12458 return nil, err 12459 } 12460 return ret, nil 12461 // { 12462 // "description": "Lists all row access policies on the specified table.", 12463 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}/rowAccessPolicies", 12464 // "httpMethod": "GET", 12465 // "id": "bigquery.rowAccessPolicies.list", 12466 // "parameterOrder": [ 12467 // "projectId", 12468 // "datasetId", 12469 // "tableId" 12470 // ], 12471 // "parameters": { 12472 // "datasetId": { 12473 // "description": "Required. Dataset ID of row access policies to list.", 12474 // "location": "path", 12475 // "pattern": "^[^/]+$", 12476 // "required": true, 12477 // "type": "string" 12478 // }, 12479 // "pageSize": { 12480 // "description": "The maximum number of results to return in a single response page. Leverage the page tokens to iterate through the entire collection.", 12481 // "format": "int32", 12482 // "location": "query", 12483 // "type": "integer" 12484 // }, 12485 // "pageToken": { 12486 // "description": "Page token, returned by a previous call, to request the next page of results.", 12487 // "location": "query", 12488 // "type": "string" 12489 // }, 12490 // "projectId": { 12491 // "description": "Required. Project ID of the row access policies to list.", 12492 // "location": "path", 12493 // "pattern": "^[^/]+$", 12494 // "required": true, 12495 // "type": "string" 12496 // }, 12497 // "tableId": { 12498 // "description": "Required. Table ID of the table to list row access policies.", 12499 // "location": "path", 12500 // "pattern": "^[^/]+$", 12501 // "required": true, 12502 // "type": "string" 12503 // } 12504 // }, 12505 // "path": "projects/{+projectId}/datasets/{+datasetId}/tables/{+tableId}/rowAccessPolicies", 12506 // "response": { 12507 // "$ref": "ListRowAccessPoliciesResponse" 12508 // }, 12509 // "scopes": [ 12510 // "https://www.googleapis.com/auth/bigquery", 12511 // "https://www.googleapis.com/auth/bigquery.readonly", 12512 // "https://www.googleapis.com/auth/cloud-platform", 12513 // "https://www.googleapis.com/auth/cloud-platform.read-only" 12514 // ] 12515 // } 12516 12517} 12518 12519// Pages invokes f for each page of results. 12520// A non-nil error returned from f will halt the iteration. 12521// The provided context supersedes any context provided to the Context method. 12522func (c *RowAccessPoliciesListCall) Pages(ctx context.Context, f func(*ListRowAccessPoliciesResponse) error) error { 12523 c.ctx_ = ctx 12524 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 12525 for { 12526 x, err := c.Do() 12527 if err != nil { 12528 return err 12529 } 12530 if err := f(x); err != nil { 12531 return err 12532 } 12533 if x.NextPageToken == "" { 12534 return nil 12535 } 12536 c.PageToken(x.NextPageToken) 12537 } 12538} 12539 12540// method id "bigquery.rowAccessPolicies.setIamPolicy": 12541 12542type RowAccessPoliciesSetIamPolicyCall struct { 12543 s *Service 12544 resource string 12545 setiampolicyrequest *SetIamPolicyRequest 12546 urlParams_ gensupport.URLParams 12547 ctx_ context.Context 12548 header_ http.Header 12549} 12550 12551// SetIamPolicy: Sets the access control policy on the specified 12552// resource. Replaces any existing policy. Can return `NOT_FOUND`, 12553// `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. 12554// 12555// - resource: REQUIRED: The resource for which the policy is being 12556// specified. See the operation documentation for the appropriate 12557// value for this field. 12558func (r *RowAccessPoliciesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *RowAccessPoliciesSetIamPolicyCall { 12559 c := &RowAccessPoliciesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12560 c.resource = resource 12561 c.setiampolicyrequest = setiampolicyrequest 12562 return c 12563} 12564 12565// Fields allows partial responses to be retrieved. See 12566// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12567// for more information. 12568func (c *RowAccessPoliciesSetIamPolicyCall) Fields(s ...googleapi.Field) *RowAccessPoliciesSetIamPolicyCall { 12569 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12570 return c 12571} 12572 12573// Context sets the context to be used in this call's Do method. Any 12574// pending HTTP request will be aborted if the provided context is 12575// canceled. 12576func (c *RowAccessPoliciesSetIamPolicyCall) Context(ctx context.Context) *RowAccessPoliciesSetIamPolicyCall { 12577 c.ctx_ = ctx 12578 return c 12579} 12580 12581// Header returns an http.Header that can be modified by the caller to 12582// add HTTP headers to the request. 12583func (c *RowAccessPoliciesSetIamPolicyCall) Header() http.Header { 12584 if c.header_ == nil { 12585 c.header_ = make(http.Header) 12586 } 12587 return c.header_ 12588} 12589 12590func (c *RowAccessPoliciesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 12591 reqHeaders := make(http.Header) 12592 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12593 for k, v := range c.header_ { 12594 reqHeaders[k] = v 12595 } 12596 reqHeaders.Set("User-Agent", c.s.userAgent()) 12597 var body io.Reader = nil 12598 body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) 12599 if err != nil { 12600 return nil, err 12601 } 12602 reqHeaders.Set("Content-Type", "application/json") 12603 c.urlParams_.Set("alt", alt) 12604 c.urlParams_.Set("prettyPrint", "false") 12605 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:setIamPolicy") 12606 urls += "?" + c.urlParams_.Encode() 12607 req, err := http.NewRequest("POST", urls, body) 12608 if err != nil { 12609 return nil, err 12610 } 12611 req.Header = reqHeaders 12612 googleapi.Expand(req.URL, map[string]string{ 12613 "resource": c.resource, 12614 }) 12615 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12616} 12617 12618// Do executes the "bigquery.rowAccessPolicies.setIamPolicy" call. 12619// Exactly one of *Policy or error will be non-nil. Any non-2xx status 12620// code is an error. Response headers are in either 12621// *Policy.ServerResponse.Header or (if a response was returned at all) 12622// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 12623// check whether the returned error was because http.StatusNotModified 12624// was returned. 12625func (c *RowAccessPoliciesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 12626 gensupport.SetOptions(c.urlParams_, opts...) 12627 res, err := c.doRequest("json") 12628 if res != nil && res.StatusCode == http.StatusNotModified { 12629 if res.Body != nil { 12630 res.Body.Close() 12631 } 12632 return nil, &googleapi.Error{ 12633 Code: res.StatusCode, 12634 Header: res.Header, 12635 } 12636 } 12637 if err != nil { 12638 return nil, err 12639 } 12640 defer googleapi.CloseBody(res) 12641 if err := googleapi.CheckResponse(res); err != nil { 12642 return nil, err 12643 } 12644 ret := &Policy{ 12645 ServerResponse: googleapi.ServerResponse{ 12646 Header: res.Header, 12647 HTTPStatusCode: res.StatusCode, 12648 }, 12649 } 12650 target := &ret 12651 if err := gensupport.DecodeResponse(target, res); err != nil { 12652 return nil, err 12653 } 12654 return ret, nil 12655 // { 12656 // "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", 12657 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}/rowAccessPolicies/{rowAccessPoliciesId}:setIamPolicy", 12658 // "httpMethod": "POST", 12659 // "id": "bigquery.rowAccessPolicies.setIamPolicy", 12660 // "parameterOrder": [ 12661 // "resource" 12662 // ], 12663 // "parameters": { 12664 // "resource": { 12665 // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", 12666 // "location": "path", 12667 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+/rowAccessPolicies/[^/]+$", 12668 // "required": true, 12669 // "type": "string" 12670 // } 12671 // }, 12672 // "path": "{+resource}:setIamPolicy", 12673 // "request": { 12674 // "$ref": "SetIamPolicyRequest" 12675 // }, 12676 // "response": { 12677 // "$ref": "Policy" 12678 // }, 12679 // "scopes": [ 12680 // "https://www.googleapis.com/auth/bigquery", 12681 // "https://www.googleapis.com/auth/cloud-platform" 12682 // ] 12683 // } 12684 12685} 12686 12687// method id "bigquery.rowAccessPolicies.testIamPermissions": 12688 12689type RowAccessPoliciesTestIamPermissionsCall struct { 12690 s *Service 12691 resource string 12692 testiampermissionsrequest *TestIamPermissionsRequest 12693 urlParams_ gensupport.URLParams 12694 ctx_ context.Context 12695 header_ http.Header 12696} 12697 12698// TestIamPermissions: Returns permissions that a caller has on the 12699// specified resource. If the resource does not exist, this will return 12700// an empty set of permissions, not a `NOT_FOUND` error. Note: This 12701// operation is designed to be used for building permission-aware UIs 12702// and command-line tools, not for authorization checking. This 12703// operation may "fail open" without warning. 12704// 12705// - resource: REQUIRED: The resource for which the policy detail is 12706// being requested. See the operation documentation for the 12707// appropriate value for this field. 12708func (r *RowAccessPoliciesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *RowAccessPoliciesTestIamPermissionsCall { 12709 c := &RowAccessPoliciesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12710 c.resource = resource 12711 c.testiampermissionsrequest = testiampermissionsrequest 12712 return c 12713} 12714 12715// Fields allows partial responses to be retrieved. See 12716// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12717// for more information. 12718func (c *RowAccessPoliciesTestIamPermissionsCall) Fields(s ...googleapi.Field) *RowAccessPoliciesTestIamPermissionsCall { 12719 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12720 return c 12721} 12722 12723// Context sets the context to be used in this call's Do method. Any 12724// pending HTTP request will be aborted if the provided context is 12725// canceled. 12726func (c *RowAccessPoliciesTestIamPermissionsCall) Context(ctx context.Context) *RowAccessPoliciesTestIamPermissionsCall { 12727 c.ctx_ = ctx 12728 return c 12729} 12730 12731// Header returns an http.Header that can be modified by the caller to 12732// add HTTP headers to the request. 12733func (c *RowAccessPoliciesTestIamPermissionsCall) Header() http.Header { 12734 if c.header_ == nil { 12735 c.header_ = make(http.Header) 12736 } 12737 return c.header_ 12738} 12739 12740func (c *RowAccessPoliciesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { 12741 reqHeaders := make(http.Header) 12742 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12743 for k, v := range c.header_ { 12744 reqHeaders[k] = v 12745 } 12746 reqHeaders.Set("User-Agent", c.s.userAgent()) 12747 var body io.Reader = nil 12748 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) 12749 if err != nil { 12750 return nil, err 12751 } 12752 reqHeaders.Set("Content-Type", "application/json") 12753 c.urlParams_.Set("alt", alt) 12754 c.urlParams_.Set("prettyPrint", "false") 12755 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:testIamPermissions") 12756 urls += "?" + c.urlParams_.Encode() 12757 req, err := http.NewRequest("POST", urls, body) 12758 if err != nil { 12759 return nil, err 12760 } 12761 req.Header = reqHeaders 12762 googleapi.Expand(req.URL, map[string]string{ 12763 "resource": c.resource, 12764 }) 12765 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12766} 12767 12768// Do executes the "bigquery.rowAccessPolicies.testIamPermissions" call. 12769// Exactly one of *TestIamPermissionsResponse or error will be non-nil. 12770// Any non-2xx status code is an error. Response headers are in either 12771// *TestIamPermissionsResponse.ServerResponse.Header or (if a response 12772// was returned at all) in error.(*googleapi.Error).Header. Use 12773// googleapi.IsNotModified to check whether the returned error was 12774// because http.StatusNotModified was returned. 12775func (c *RowAccessPoliciesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { 12776 gensupport.SetOptions(c.urlParams_, opts...) 12777 res, err := c.doRequest("json") 12778 if res != nil && res.StatusCode == http.StatusNotModified { 12779 if res.Body != nil { 12780 res.Body.Close() 12781 } 12782 return nil, &googleapi.Error{ 12783 Code: res.StatusCode, 12784 Header: res.Header, 12785 } 12786 } 12787 if err != nil { 12788 return nil, err 12789 } 12790 defer googleapi.CloseBody(res) 12791 if err := googleapi.CheckResponse(res); err != nil { 12792 return nil, err 12793 } 12794 ret := &TestIamPermissionsResponse{ 12795 ServerResponse: googleapi.ServerResponse{ 12796 Header: res.Header, 12797 HTTPStatusCode: res.StatusCode, 12798 }, 12799 } 12800 target := &ret 12801 if err := gensupport.DecodeResponse(target, res); err != nil { 12802 return nil, err 12803 } 12804 return ret, nil 12805 // { 12806 // "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.", 12807 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}/rowAccessPolicies/{rowAccessPoliciesId}:testIamPermissions", 12808 // "httpMethod": "POST", 12809 // "id": "bigquery.rowAccessPolicies.testIamPermissions", 12810 // "parameterOrder": [ 12811 // "resource" 12812 // ], 12813 // "parameters": { 12814 // "resource": { 12815 // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", 12816 // "location": "path", 12817 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+/rowAccessPolicies/[^/]+$", 12818 // "required": true, 12819 // "type": "string" 12820 // } 12821 // }, 12822 // "path": "{+resource}:testIamPermissions", 12823 // "request": { 12824 // "$ref": "TestIamPermissionsRequest" 12825 // }, 12826 // "response": { 12827 // "$ref": "TestIamPermissionsResponse" 12828 // }, 12829 // "scopes": [ 12830 // "https://www.googleapis.com/auth/bigquery", 12831 // "https://www.googleapis.com/auth/bigquery.readonly", 12832 // "https://www.googleapis.com/auth/cloud-platform", 12833 // "https://www.googleapis.com/auth/cloud-platform.read-only" 12834 // ] 12835 // } 12836 12837} 12838 12839// method id "bigquery.tabledata.insertAll": 12840 12841type TabledataInsertAllCall struct { 12842 s *Service 12843 projectId string 12844 datasetId string 12845 tableId string 12846 tabledatainsertallrequest *TableDataInsertAllRequest 12847 urlParams_ gensupport.URLParams 12848 ctx_ context.Context 12849 header_ http.Header 12850} 12851 12852// InsertAll: Streams data into BigQuery one record at a time without 12853// needing to run a load job. Requires the WRITER dataset role. 12854// 12855// - datasetId: Dataset ID of the destination table. 12856// - projectId: Project ID of the destination table. 12857// - tableId: Table ID of the destination table. 12858func (r *TabledataService) InsertAll(projectId string, datasetId string, tableId string, tabledatainsertallrequest *TableDataInsertAllRequest) *TabledataInsertAllCall { 12859 c := &TabledataInsertAllCall{s: r.s, urlParams_: make(gensupport.URLParams)} 12860 c.projectId = projectId 12861 c.datasetId = datasetId 12862 c.tableId = tableId 12863 c.tabledatainsertallrequest = tabledatainsertallrequest 12864 return c 12865} 12866 12867// Fields allows partial responses to be retrieved. See 12868// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 12869// for more information. 12870func (c *TabledataInsertAllCall) Fields(s ...googleapi.Field) *TabledataInsertAllCall { 12871 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 12872 return c 12873} 12874 12875// Context sets the context to be used in this call's Do method. Any 12876// pending HTTP request will be aborted if the provided context is 12877// canceled. 12878func (c *TabledataInsertAllCall) Context(ctx context.Context) *TabledataInsertAllCall { 12879 c.ctx_ = ctx 12880 return c 12881} 12882 12883// Header returns an http.Header that can be modified by the caller to 12884// add HTTP headers to the request. 12885func (c *TabledataInsertAllCall) Header() http.Header { 12886 if c.header_ == nil { 12887 c.header_ = make(http.Header) 12888 } 12889 return c.header_ 12890} 12891 12892func (c *TabledataInsertAllCall) doRequest(alt string) (*http.Response, error) { 12893 reqHeaders := make(http.Header) 12894 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 12895 for k, v := range c.header_ { 12896 reqHeaders[k] = v 12897 } 12898 reqHeaders.Set("User-Agent", c.s.userAgent()) 12899 var body io.Reader = nil 12900 body, err := googleapi.WithoutDataWrapper.JSONReader(c.tabledatainsertallrequest) 12901 if err != nil { 12902 return nil, err 12903 } 12904 reqHeaders.Set("Content-Type", "application/json") 12905 c.urlParams_.Set("alt", alt) 12906 c.urlParams_.Set("prettyPrint", "false") 12907 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/insertAll") 12908 urls += "?" + c.urlParams_.Encode() 12909 req, err := http.NewRequest("POST", urls, body) 12910 if err != nil { 12911 return nil, err 12912 } 12913 req.Header = reqHeaders 12914 googleapi.Expand(req.URL, map[string]string{ 12915 "projectId": c.projectId, 12916 "datasetId": c.datasetId, 12917 "tableId": c.tableId, 12918 }) 12919 return gensupport.SendRequest(c.ctx_, c.s.client, req) 12920} 12921 12922// Do executes the "bigquery.tabledata.insertAll" call. 12923// Exactly one of *TableDataInsertAllResponse or error will be non-nil. 12924// Any non-2xx status code is an error. Response headers are in either 12925// *TableDataInsertAllResponse.ServerResponse.Header or (if a response 12926// was returned at all) in error.(*googleapi.Error).Header. Use 12927// googleapi.IsNotModified to check whether the returned error was 12928// because http.StatusNotModified was returned. 12929func (c *TabledataInsertAllCall) Do(opts ...googleapi.CallOption) (*TableDataInsertAllResponse, error) { 12930 gensupport.SetOptions(c.urlParams_, opts...) 12931 res, err := c.doRequest("json") 12932 if res != nil && res.StatusCode == http.StatusNotModified { 12933 if res.Body != nil { 12934 res.Body.Close() 12935 } 12936 return nil, &googleapi.Error{ 12937 Code: res.StatusCode, 12938 Header: res.Header, 12939 } 12940 } 12941 if err != nil { 12942 return nil, err 12943 } 12944 defer googleapi.CloseBody(res) 12945 if err := googleapi.CheckResponse(res); err != nil { 12946 return nil, err 12947 } 12948 ret := &TableDataInsertAllResponse{ 12949 ServerResponse: googleapi.ServerResponse{ 12950 Header: res.Header, 12951 HTTPStatusCode: res.StatusCode, 12952 }, 12953 } 12954 target := &ret 12955 if err := gensupport.DecodeResponse(target, res); err != nil { 12956 return nil, err 12957 } 12958 return ret, nil 12959 // { 12960 // "description": "Streams data into BigQuery one record at a time without needing to run a load job. Requires the WRITER dataset role.", 12961 // "httpMethod": "POST", 12962 // "id": "bigquery.tabledata.insertAll", 12963 // "parameterOrder": [ 12964 // "projectId", 12965 // "datasetId", 12966 // "tableId" 12967 // ], 12968 // "parameters": { 12969 // "datasetId": { 12970 // "description": "Dataset ID of the destination table.", 12971 // "location": "path", 12972 // "required": true, 12973 // "type": "string" 12974 // }, 12975 // "projectId": { 12976 // "description": "Project ID of the destination table.", 12977 // "location": "path", 12978 // "required": true, 12979 // "type": "string" 12980 // }, 12981 // "tableId": { 12982 // "description": "Table ID of the destination table.", 12983 // "location": "path", 12984 // "required": true, 12985 // "type": "string" 12986 // } 12987 // }, 12988 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/insertAll", 12989 // "request": { 12990 // "$ref": "TableDataInsertAllRequest" 12991 // }, 12992 // "response": { 12993 // "$ref": "TableDataInsertAllResponse" 12994 // }, 12995 // "scopes": [ 12996 // "https://www.googleapis.com/auth/bigquery", 12997 // "https://www.googleapis.com/auth/bigquery.insertdata", 12998 // "https://www.googleapis.com/auth/cloud-platform" 12999 // ] 13000 // } 13001 13002} 13003 13004// method id "bigquery.tabledata.list": 13005 13006type TabledataListCall struct { 13007 s *Service 13008 projectId string 13009 datasetId string 13010 tableId string 13011 urlParams_ gensupport.URLParams 13012 ifNoneMatch_ string 13013 ctx_ context.Context 13014 header_ http.Header 13015} 13016 13017// List: Retrieves table data from a specified set of rows. Requires the 13018// READER dataset role. 13019// 13020// - datasetId: Dataset ID of the table to read. 13021// - projectId: Project ID of the table to read. 13022// - tableId: Table ID of the table to read. 13023func (r *TabledataService) List(projectId string, datasetId string, tableId string) *TabledataListCall { 13024 c := &TabledataListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13025 c.projectId = projectId 13026 c.datasetId = datasetId 13027 c.tableId = tableId 13028 return c 13029} 13030 13031// MaxResults sets the optional parameter "maxResults": Maximum number 13032// of results to return 13033func (c *TabledataListCall) MaxResults(maxResults int64) *TabledataListCall { 13034 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 13035 return c 13036} 13037 13038// PageToken sets the optional parameter "pageToken": Page token, 13039// returned by a previous call, identifying the result set 13040func (c *TabledataListCall) PageToken(pageToken string) *TabledataListCall { 13041 c.urlParams_.Set("pageToken", pageToken) 13042 return c 13043} 13044 13045// SelectedFields sets the optional parameter "selectedFields": List of 13046// fields to return (comma-separated). If unspecified, all fields are 13047// returned 13048func (c *TabledataListCall) SelectedFields(selectedFields string) *TabledataListCall { 13049 c.urlParams_.Set("selectedFields", selectedFields) 13050 return c 13051} 13052 13053// StartIndex sets the optional parameter "startIndex": Zero-based index 13054// of the starting row to read 13055func (c *TabledataListCall) StartIndex(startIndex uint64) *TabledataListCall { 13056 c.urlParams_.Set("startIndex", fmt.Sprint(startIndex)) 13057 return c 13058} 13059 13060// Fields allows partial responses to be retrieved. See 13061// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13062// for more information. 13063func (c *TabledataListCall) Fields(s ...googleapi.Field) *TabledataListCall { 13064 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13065 return c 13066} 13067 13068// IfNoneMatch sets the optional parameter which makes the operation 13069// fail if the object's ETag matches the given value. This is useful for 13070// getting updates only after the object has changed since the last 13071// request. Use googleapi.IsNotModified to check whether the response 13072// error from Do is the result of In-None-Match. 13073func (c *TabledataListCall) IfNoneMatch(entityTag string) *TabledataListCall { 13074 c.ifNoneMatch_ = entityTag 13075 return c 13076} 13077 13078// Context sets the context to be used in this call's Do method. Any 13079// pending HTTP request will be aborted if the provided context is 13080// canceled. 13081func (c *TabledataListCall) Context(ctx context.Context) *TabledataListCall { 13082 c.ctx_ = ctx 13083 return c 13084} 13085 13086// Header returns an http.Header that can be modified by the caller to 13087// add HTTP headers to the request. 13088func (c *TabledataListCall) Header() http.Header { 13089 if c.header_ == nil { 13090 c.header_ = make(http.Header) 13091 } 13092 return c.header_ 13093} 13094 13095func (c *TabledataListCall) doRequest(alt string) (*http.Response, error) { 13096 reqHeaders := make(http.Header) 13097 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 13098 for k, v := range c.header_ { 13099 reqHeaders[k] = v 13100 } 13101 reqHeaders.Set("User-Agent", c.s.userAgent()) 13102 if c.ifNoneMatch_ != "" { 13103 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 13104 } 13105 var body io.Reader = nil 13106 c.urlParams_.Set("alt", alt) 13107 c.urlParams_.Set("prettyPrint", "false") 13108 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/data") 13109 urls += "?" + c.urlParams_.Encode() 13110 req, err := http.NewRequest("GET", urls, body) 13111 if err != nil { 13112 return nil, err 13113 } 13114 req.Header = reqHeaders 13115 googleapi.Expand(req.URL, map[string]string{ 13116 "projectId": c.projectId, 13117 "datasetId": c.datasetId, 13118 "tableId": c.tableId, 13119 }) 13120 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13121} 13122 13123// Do executes the "bigquery.tabledata.list" call. 13124// Exactly one of *TableDataList or error will be non-nil. Any non-2xx 13125// status code is an error. Response headers are in either 13126// *TableDataList.ServerResponse.Header or (if a response was returned 13127// at all) in error.(*googleapi.Error).Header. Use 13128// googleapi.IsNotModified to check whether the returned error was 13129// because http.StatusNotModified was returned. 13130func (c *TabledataListCall) Do(opts ...googleapi.CallOption) (*TableDataList, error) { 13131 gensupport.SetOptions(c.urlParams_, opts...) 13132 res, err := c.doRequest("json") 13133 if res != nil && res.StatusCode == http.StatusNotModified { 13134 if res.Body != nil { 13135 res.Body.Close() 13136 } 13137 return nil, &googleapi.Error{ 13138 Code: res.StatusCode, 13139 Header: res.Header, 13140 } 13141 } 13142 if err != nil { 13143 return nil, err 13144 } 13145 defer googleapi.CloseBody(res) 13146 if err := googleapi.CheckResponse(res); err != nil { 13147 return nil, err 13148 } 13149 ret := &TableDataList{ 13150 ServerResponse: googleapi.ServerResponse{ 13151 Header: res.Header, 13152 HTTPStatusCode: res.StatusCode, 13153 }, 13154 } 13155 target := &ret 13156 if err := gensupport.DecodeResponse(target, res); err != nil { 13157 return nil, err 13158 } 13159 return ret, nil 13160 // { 13161 // "description": "Retrieves table data from a specified set of rows. Requires the READER dataset role.", 13162 // "httpMethod": "GET", 13163 // "id": "bigquery.tabledata.list", 13164 // "parameterOrder": [ 13165 // "projectId", 13166 // "datasetId", 13167 // "tableId" 13168 // ], 13169 // "parameters": { 13170 // "datasetId": { 13171 // "description": "Dataset ID of the table to read", 13172 // "location": "path", 13173 // "required": true, 13174 // "type": "string" 13175 // }, 13176 // "maxResults": { 13177 // "description": "Maximum number of results to return", 13178 // "format": "uint32", 13179 // "location": "query", 13180 // "type": "integer" 13181 // }, 13182 // "pageToken": { 13183 // "description": "Page token, returned by a previous call, identifying the result set", 13184 // "location": "query", 13185 // "type": "string" 13186 // }, 13187 // "projectId": { 13188 // "description": "Project ID of the table to read", 13189 // "location": "path", 13190 // "required": true, 13191 // "type": "string" 13192 // }, 13193 // "selectedFields": { 13194 // "description": "List of fields to return (comma-separated). If unspecified, all fields are returned", 13195 // "location": "query", 13196 // "type": "string" 13197 // }, 13198 // "startIndex": { 13199 // "description": "Zero-based index of the starting row to read", 13200 // "format": "uint64", 13201 // "location": "query", 13202 // "type": "string" 13203 // }, 13204 // "tableId": { 13205 // "description": "Table ID of the table to read", 13206 // "location": "path", 13207 // "required": true, 13208 // "type": "string" 13209 // } 13210 // }, 13211 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}/data", 13212 // "response": { 13213 // "$ref": "TableDataList" 13214 // }, 13215 // "scopes": [ 13216 // "https://www.googleapis.com/auth/bigquery", 13217 // "https://www.googleapis.com/auth/cloud-platform", 13218 // "https://www.googleapis.com/auth/cloud-platform.read-only" 13219 // ] 13220 // } 13221 13222} 13223 13224// Pages invokes f for each page of results. 13225// A non-nil error returned from f will halt the iteration. 13226// The provided context supersedes any context provided to the Context method. 13227func (c *TabledataListCall) Pages(ctx context.Context, f func(*TableDataList) error) error { 13228 c.ctx_ = ctx 13229 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 13230 for { 13231 x, err := c.Do() 13232 if err != nil { 13233 return err 13234 } 13235 if err := f(x); err != nil { 13236 return err 13237 } 13238 if x.PageToken == "" { 13239 return nil 13240 } 13241 c.PageToken(x.PageToken) 13242 } 13243} 13244 13245// method id "bigquery.tables.delete": 13246 13247type TablesDeleteCall struct { 13248 s *Service 13249 projectId string 13250 datasetId string 13251 tableId string 13252 urlParams_ gensupport.URLParams 13253 ctx_ context.Context 13254 header_ http.Header 13255} 13256 13257// Delete: Deletes the table specified by tableId from the dataset. If 13258// the table contains data, all the data will be deleted. 13259// 13260// - datasetId: Dataset ID of the table to delete. 13261// - projectId: Project ID of the table to delete. 13262// - tableId: Table ID of the table to delete. 13263func (r *TablesService) Delete(projectId string, datasetId string, tableId string) *TablesDeleteCall { 13264 c := &TablesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13265 c.projectId = projectId 13266 c.datasetId = datasetId 13267 c.tableId = tableId 13268 return c 13269} 13270 13271// Fields allows partial responses to be retrieved. See 13272// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13273// for more information. 13274func (c *TablesDeleteCall) Fields(s ...googleapi.Field) *TablesDeleteCall { 13275 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13276 return c 13277} 13278 13279// Context sets the context to be used in this call's Do method. Any 13280// pending HTTP request will be aborted if the provided context is 13281// canceled. 13282func (c *TablesDeleteCall) Context(ctx context.Context) *TablesDeleteCall { 13283 c.ctx_ = ctx 13284 return c 13285} 13286 13287// Header returns an http.Header that can be modified by the caller to 13288// add HTTP headers to the request. 13289func (c *TablesDeleteCall) Header() http.Header { 13290 if c.header_ == nil { 13291 c.header_ = make(http.Header) 13292 } 13293 return c.header_ 13294} 13295 13296func (c *TablesDeleteCall) doRequest(alt string) (*http.Response, error) { 13297 reqHeaders := make(http.Header) 13298 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 13299 for k, v := range c.header_ { 13300 reqHeaders[k] = v 13301 } 13302 reqHeaders.Set("User-Agent", c.s.userAgent()) 13303 var body io.Reader = nil 13304 c.urlParams_.Set("alt", alt) 13305 c.urlParams_.Set("prettyPrint", "false") 13306 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}") 13307 urls += "?" + c.urlParams_.Encode() 13308 req, err := http.NewRequest("DELETE", urls, body) 13309 if err != nil { 13310 return nil, err 13311 } 13312 req.Header = reqHeaders 13313 googleapi.Expand(req.URL, map[string]string{ 13314 "projectId": c.projectId, 13315 "datasetId": c.datasetId, 13316 "tableId": c.tableId, 13317 }) 13318 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13319} 13320 13321// Do executes the "bigquery.tables.delete" call. 13322func (c *TablesDeleteCall) Do(opts ...googleapi.CallOption) error { 13323 gensupport.SetOptions(c.urlParams_, opts...) 13324 res, err := c.doRequest("json") 13325 if err != nil { 13326 return err 13327 } 13328 defer googleapi.CloseBody(res) 13329 if err := googleapi.CheckResponse(res); err != nil { 13330 return err 13331 } 13332 return nil 13333 // { 13334 // "description": "Deletes the table specified by tableId from the dataset. If the table contains data, all the data will be deleted.", 13335 // "httpMethod": "DELETE", 13336 // "id": "bigquery.tables.delete", 13337 // "parameterOrder": [ 13338 // "projectId", 13339 // "datasetId", 13340 // "tableId" 13341 // ], 13342 // "parameters": { 13343 // "datasetId": { 13344 // "description": "Dataset ID of the table to delete", 13345 // "location": "path", 13346 // "required": true, 13347 // "type": "string" 13348 // }, 13349 // "projectId": { 13350 // "description": "Project ID of the table to delete", 13351 // "location": "path", 13352 // "required": true, 13353 // "type": "string" 13354 // }, 13355 // "tableId": { 13356 // "description": "Table ID of the table to delete", 13357 // "location": "path", 13358 // "required": true, 13359 // "type": "string" 13360 // } 13361 // }, 13362 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", 13363 // "scopes": [ 13364 // "https://www.googleapis.com/auth/bigquery", 13365 // "https://www.googleapis.com/auth/cloud-platform" 13366 // ] 13367 // } 13368 13369} 13370 13371// method id "bigquery.tables.get": 13372 13373type TablesGetCall struct { 13374 s *Service 13375 projectId string 13376 datasetId string 13377 tableId string 13378 urlParams_ gensupport.URLParams 13379 ifNoneMatch_ string 13380 ctx_ context.Context 13381 header_ http.Header 13382} 13383 13384// Get: Gets the specified table resource by table ID. This method does 13385// not return the data in the table, it only returns the table resource, 13386// which describes the structure of this table. 13387// 13388// - datasetId: Dataset ID of the requested table. 13389// - projectId: Project ID of the requested table. 13390// - tableId: Table ID of the requested table. 13391func (r *TablesService) Get(projectId string, datasetId string, tableId string) *TablesGetCall { 13392 c := &TablesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13393 c.projectId = projectId 13394 c.datasetId = datasetId 13395 c.tableId = tableId 13396 return c 13397} 13398 13399// SelectedFields sets the optional parameter "selectedFields": List of 13400// fields to return (comma-separated). If unspecified, all fields are 13401// returned 13402func (c *TablesGetCall) SelectedFields(selectedFields string) *TablesGetCall { 13403 c.urlParams_.Set("selectedFields", selectedFields) 13404 return c 13405} 13406 13407// Fields allows partial responses to be retrieved. See 13408// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13409// for more information. 13410func (c *TablesGetCall) Fields(s ...googleapi.Field) *TablesGetCall { 13411 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13412 return c 13413} 13414 13415// IfNoneMatch sets the optional parameter which makes the operation 13416// fail if the object's ETag matches the given value. This is useful for 13417// getting updates only after the object has changed since the last 13418// request. Use googleapi.IsNotModified to check whether the response 13419// error from Do is the result of In-None-Match. 13420func (c *TablesGetCall) IfNoneMatch(entityTag string) *TablesGetCall { 13421 c.ifNoneMatch_ = entityTag 13422 return c 13423} 13424 13425// Context sets the context to be used in this call's Do method. Any 13426// pending HTTP request will be aborted if the provided context is 13427// canceled. 13428func (c *TablesGetCall) Context(ctx context.Context) *TablesGetCall { 13429 c.ctx_ = ctx 13430 return c 13431} 13432 13433// Header returns an http.Header that can be modified by the caller to 13434// add HTTP headers to the request. 13435func (c *TablesGetCall) Header() http.Header { 13436 if c.header_ == nil { 13437 c.header_ = make(http.Header) 13438 } 13439 return c.header_ 13440} 13441 13442func (c *TablesGetCall) doRequest(alt string) (*http.Response, error) { 13443 reqHeaders := make(http.Header) 13444 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 13445 for k, v := range c.header_ { 13446 reqHeaders[k] = v 13447 } 13448 reqHeaders.Set("User-Agent", c.s.userAgent()) 13449 if c.ifNoneMatch_ != "" { 13450 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 13451 } 13452 var body io.Reader = nil 13453 c.urlParams_.Set("alt", alt) 13454 c.urlParams_.Set("prettyPrint", "false") 13455 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}") 13456 urls += "?" + c.urlParams_.Encode() 13457 req, err := http.NewRequest("GET", urls, body) 13458 if err != nil { 13459 return nil, err 13460 } 13461 req.Header = reqHeaders 13462 googleapi.Expand(req.URL, map[string]string{ 13463 "projectId": c.projectId, 13464 "datasetId": c.datasetId, 13465 "tableId": c.tableId, 13466 }) 13467 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13468} 13469 13470// Do executes the "bigquery.tables.get" call. 13471// Exactly one of *Table or error will be non-nil. Any non-2xx status 13472// code is an error. Response headers are in either 13473// *Table.ServerResponse.Header or (if a response was returned at all) 13474// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 13475// check whether the returned error was because http.StatusNotModified 13476// was returned. 13477func (c *TablesGetCall) Do(opts ...googleapi.CallOption) (*Table, error) { 13478 gensupport.SetOptions(c.urlParams_, opts...) 13479 res, err := c.doRequest("json") 13480 if res != nil && res.StatusCode == http.StatusNotModified { 13481 if res.Body != nil { 13482 res.Body.Close() 13483 } 13484 return nil, &googleapi.Error{ 13485 Code: res.StatusCode, 13486 Header: res.Header, 13487 } 13488 } 13489 if err != nil { 13490 return nil, err 13491 } 13492 defer googleapi.CloseBody(res) 13493 if err := googleapi.CheckResponse(res); err != nil { 13494 return nil, err 13495 } 13496 ret := &Table{ 13497 ServerResponse: googleapi.ServerResponse{ 13498 Header: res.Header, 13499 HTTPStatusCode: res.StatusCode, 13500 }, 13501 } 13502 target := &ret 13503 if err := gensupport.DecodeResponse(target, res); err != nil { 13504 return nil, err 13505 } 13506 return ret, nil 13507 // { 13508 // "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.", 13509 // "httpMethod": "GET", 13510 // "id": "bigquery.tables.get", 13511 // "parameterOrder": [ 13512 // "projectId", 13513 // "datasetId", 13514 // "tableId" 13515 // ], 13516 // "parameters": { 13517 // "datasetId": { 13518 // "description": "Dataset ID of the requested table", 13519 // "location": "path", 13520 // "required": true, 13521 // "type": "string" 13522 // }, 13523 // "projectId": { 13524 // "description": "Project ID of the requested table", 13525 // "location": "path", 13526 // "required": true, 13527 // "type": "string" 13528 // }, 13529 // "selectedFields": { 13530 // "description": "List of fields to return (comma-separated). If unspecified, all fields are returned", 13531 // "location": "query", 13532 // "type": "string" 13533 // }, 13534 // "tableId": { 13535 // "description": "Table ID of the requested table", 13536 // "location": "path", 13537 // "required": true, 13538 // "type": "string" 13539 // } 13540 // }, 13541 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", 13542 // "response": { 13543 // "$ref": "Table" 13544 // }, 13545 // "scopes": [ 13546 // "https://www.googleapis.com/auth/bigquery", 13547 // "https://www.googleapis.com/auth/cloud-platform", 13548 // "https://www.googleapis.com/auth/cloud-platform.read-only" 13549 // ] 13550 // } 13551 13552} 13553 13554// method id "bigquery.tables.getIamPolicy": 13555 13556type TablesGetIamPolicyCall struct { 13557 s *Service 13558 resource string 13559 getiampolicyrequest *GetIamPolicyRequest 13560 urlParams_ gensupport.URLParams 13561 ctx_ context.Context 13562 header_ http.Header 13563} 13564 13565// GetIamPolicy: Gets the access control policy for a resource. Returns 13566// an empty policy if the resource exists and does not have a policy 13567// set. 13568// 13569// - resource: REQUIRED: The resource for which the policy is being 13570// requested. See the operation documentation for the appropriate 13571// value for this field. 13572func (r *TablesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *TablesGetIamPolicyCall { 13573 c := &TablesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13574 c.resource = resource 13575 c.getiampolicyrequest = getiampolicyrequest 13576 return c 13577} 13578 13579// Fields allows partial responses to be retrieved. See 13580// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13581// for more information. 13582func (c *TablesGetIamPolicyCall) Fields(s ...googleapi.Field) *TablesGetIamPolicyCall { 13583 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13584 return c 13585} 13586 13587// Context sets the context to be used in this call's Do method. Any 13588// pending HTTP request will be aborted if the provided context is 13589// canceled. 13590func (c *TablesGetIamPolicyCall) Context(ctx context.Context) *TablesGetIamPolicyCall { 13591 c.ctx_ = ctx 13592 return c 13593} 13594 13595// Header returns an http.Header that can be modified by the caller to 13596// add HTTP headers to the request. 13597func (c *TablesGetIamPolicyCall) Header() http.Header { 13598 if c.header_ == nil { 13599 c.header_ = make(http.Header) 13600 } 13601 return c.header_ 13602} 13603 13604func (c *TablesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 13605 reqHeaders := make(http.Header) 13606 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 13607 for k, v := range c.header_ { 13608 reqHeaders[k] = v 13609 } 13610 reqHeaders.Set("User-Agent", c.s.userAgent()) 13611 var body io.Reader = nil 13612 body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) 13613 if err != nil { 13614 return nil, err 13615 } 13616 reqHeaders.Set("Content-Type", "application/json") 13617 c.urlParams_.Set("alt", alt) 13618 c.urlParams_.Set("prettyPrint", "false") 13619 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:getIamPolicy") 13620 urls += "?" + c.urlParams_.Encode() 13621 req, err := http.NewRequest("POST", urls, body) 13622 if err != nil { 13623 return nil, err 13624 } 13625 req.Header = reqHeaders 13626 googleapi.Expand(req.URL, map[string]string{ 13627 "resource": c.resource, 13628 }) 13629 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13630} 13631 13632// Do executes the "bigquery.tables.getIamPolicy" call. 13633// Exactly one of *Policy or error will be non-nil. Any non-2xx status 13634// code is an error. Response headers are in either 13635// *Policy.ServerResponse.Header or (if a response was returned at all) 13636// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 13637// check whether the returned error was because http.StatusNotModified 13638// was returned. 13639func (c *TablesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 13640 gensupport.SetOptions(c.urlParams_, opts...) 13641 res, err := c.doRequest("json") 13642 if res != nil && res.StatusCode == http.StatusNotModified { 13643 if res.Body != nil { 13644 res.Body.Close() 13645 } 13646 return nil, &googleapi.Error{ 13647 Code: res.StatusCode, 13648 Header: res.Header, 13649 } 13650 } 13651 if err != nil { 13652 return nil, err 13653 } 13654 defer googleapi.CloseBody(res) 13655 if err := googleapi.CheckResponse(res); err != nil { 13656 return nil, err 13657 } 13658 ret := &Policy{ 13659 ServerResponse: googleapi.ServerResponse{ 13660 Header: res.Header, 13661 HTTPStatusCode: res.StatusCode, 13662 }, 13663 } 13664 target := &ret 13665 if err := gensupport.DecodeResponse(target, res); err != nil { 13666 return nil, err 13667 } 13668 return ret, nil 13669 // { 13670 // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", 13671 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}:getIamPolicy", 13672 // "httpMethod": "POST", 13673 // "id": "bigquery.tables.getIamPolicy", 13674 // "parameterOrder": [ 13675 // "resource" 13676 // ], 13677 // "parameters": { 13678 // "resource": { 13679 // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", 13680 // "location": "path", 13681 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+$", 13682 // "required": true, 13683 // "type": "string" 13684 // } 13685 // }, 13686 // "path": "{+resource}:getIamPolicy", 13687 // "request": { 13688 // "$ref": "GetIamPolicyRequest" 13689 // }, 13690 // "response": { 13691 // "$ref": "Policy" 13692 // }, 13693 // "scopes": [ 13694 // "https://www.googleapis.com/auth/bigquery", 13695 // "https://www.googleapis.com/auth/bigquery.readonly", 13696 // "https://www.googleapis.com/auth/cloud-platform", 13697 // "https://www.googleapis.com/auth/cloud-platform.read-only" 13698 // ] 13699 // } 13700 13701} 13702 13703// method id "bigquery.tables.insert": 13704 13705type TablesInsertCall struct { 13706 s *Service 13707 projectId string 13708 datasetId string 13709 table *Table 13710 urlParams_ gensupport.URLParams 13711 ctx_ context.Context 13712 header_ http.Header 13713} 13714 13715// Insert: Creates a new, empty table in the dataset. 13716// 13717// - datasetId: Dataset ID of the new table. 13718// - projectId: Project ID of the new table. 13719func (r *TablesService) Insert(projectId string, datasetId string, table *Table) *TablesInsertCall { 13720 c := &TablesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13721 c.projectId = projectId 13722 c.datasetId = datasetId 13723 c.table = table 13724 return c 13725} 13726 13727// Fields allows partial responses to be retrieved. See 13728// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13729// for more information. 13730func (c *TablesInsertCall) Fields(s ...googleapi.Field) *TablesInsertCall { 13731 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13732 return c 13733} 13734 13735// Context sets the context to be used in this call's Do method. Any 13736// pending HTTP request will be aborted if the provided context is 13737// canceled. 13738func (c *TablesInsertCall) Context(ctx context.Context) *TablesInsertCall { 13739 c.ctx_ = ctx 13740 return c 13741} 13742 13743// Header returns an http.Header that can be modified by the caller to 13744// add HTTP headers to the request. 13745func (c *TablesInsertCall) Header() http.Header { 13746 if c.header_ == nil { 13747 c.header_ = make(http.Header) 13748 } 13749 return c.header_ 13750} 13751 13752func (c *TablesInsertCall) doRequest(alt string) (*http.Response, error) { 13753 reqHeaders := make(http.Header) 13754 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 13755 for k, v := range c.header_ { 13756 reqHeaders[k] = v 13757 } 13758 reqHeaders.Set("User-Agent", c.s.userAgent()) 13759 var body io.Reader = nil 13760 body, err := googleapi.WithoutDataWrapper.JSONReader(c.table) 13761 if err != nil { 13762 return nil, err 13763 } 13764 reqHeaders.Set("Content-Type", "application/json") 13765 c.urlParams_.Set("alt", alt) 13766 c.urlParams_.Set("prettyPrint", "false") 13767 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables") 13768 urls += "?" + c.urlParams_.Encode() 13769 req, err := http.NewRequest("POST", urls, body) 13770 if err != nil { 13771 return nil, err 13772 } 13773 req.Header = reqHeaders 13774 googleapi.Expand(req.URL, map[string]string{ 13775 "projectId": c.projectId, 13776 "datasetId": c.datasetId, 13777 }) 13778 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13779} 13780 13781// Do executes the "bigquery.tables.insert" call. 13782// Exactly one of *Table or error will be non-nil. Any non-2xx status 13783// code is an error. Response headers are in either 13784// *Table.ServerResponse.Header or (if a response was returned at all) 13785// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 13786// check whether the returned error was because http.StatusNotModified 13787// was returned. 13788func (c *TablesInsertCall) Do(opts ...googleapi.CallOption) (*Table, error) { 13789 gensupport.SetOptions(c.urlParams_, opts...) 13790 res, err := c.doRequest("json") 13791 if res != nil && res.StatusCode == http.StatusNotModified { 13792 if res.Body != nil { 13793 res.Body.Close() 13794 } 13795 return nil, &googleapi.Error{ 13796 Code: res.StatusCode, 13797 Header: res.Header, 13798 } 13799 } 13800 if err != nil { 13801 return nil, err 13802 } 13803 defer googleapi.CloseBody(res) 13804 if err := googleapi.CheckResponse(res); err != nil { 13805 return nil, err 13806 } 13807 ret := &Table{ 13808 ServerResponse: googleapi.ServerResponse{ 13809 Header: res.Header, 13810 HTTPStatusCode: res.StatusCode, 13811 }, 13812 } 13813 target := &ret 13814 if err := gensupport.DecodeResponse(target, res); err != nil { 13815 return nil, err 13816 } 13817 return ret, nil 13818 // { 13819 // "description": "Creates a new, empty table in the dataset.", 13820 // "httpMethod": "POST", 13821 // "id": "bigquery.tables.insert", 13822 // "parameterOrder": [ 13823 // "projectId", 13824 // "datasetId" 13825 // ], 13826 // "parameters": { 13827 // "datasetId": { 13828 // "description": "Dataset ID of the new table", 13829 // "location": "path", 13830 // "required": true, 13831 // "type": "string" 13832 // }, 13833 // "projectId": { 13834 // "description": "Project ID of the new table", 13835 // "location": "path", 13836 // "required": true, 13837 // "type": "string" 13838 // } 13839 // }, 13840 // "path": "projects/{projectId}/datasets/{datasetId}/tables", 13841 // "request": { 13842 // "$ref": "Table" 13843 // }, 13844 // "response": { 13845 // "$ref": "Table" 13846 // }, 13847 // "scopes": [ 13848 // "https://www.googleapis.com/auth/bigquery", 13849 // "https://www.googleapis.com/auth/cloud-platform" 13850 // ] 13851 // } 13852 13853} 13854 13855// method id "bigquery.tables.list": 13856 13857type TablesListCall struct { 13858 s *Service 13859 projectId string 13860 datasetId string 13861 urlParams_ gensupport.URLParams 13862 ifNoneMatch_ string 13863 ctx_ context.Context 13864 header_ http.Header 13865} 13866 13867// List: Lists all tables in the specified dataset. Requires the READER 13868// dataset role. 13869// 13870// - datasetId: Dataset ID of the tables to list. 13871// - projectId: Project ID of the tables to list. 13872func (r *TablesService) List(projectId string, datasetId string) *TablesListCall { 13873 c := &TablesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 13874 c.projectId = projectId 13875 c.datasetId = datasetId 13876 return c 13877} 13878 13879// MaxResults sets the optional parameter "maxResults": Maximum number 13880// of results to return 13881func (c *TablesListCall) MaxResults(maxResults int64) *TablesListCall { 13882 c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) 13883 return c 13884} 13885 13886// PageToken sets the optional parameter "pageToken": Page token, 13887// returned by a previous call, to request the next page of results 13888func (c *TablesListCall) PageToken(pageToken string) *TablesListCall { 13889 c.urlParams_.Set("pageToken", pageToken) 13890 return c 13891} 13892 13893// Fields allows partial responses to be retrieved. See 13894// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 13895// for more information. 13896func (c *TablesListCall) Fields(s ...googleapi.Field) *TablesListCall { 13897 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 13898 return c 13899} 13900 13901// IfNoneMatch sets the optional parameter which makes the operation 13902// fail if the object's ETag matches the given value. This is useful for 13903// getting updates only after the object has changed since the last 13904// request. Use googleapi.IsNotModified to check whether the response 13905// error from Do is the result of In-None-Match. 13906func (c *TablesListCall) IfNoneMatch(entityTag string) *TablesListCall { 13907 c.ifNoneMatch_ = entityTag 13908 return c 13909} 13910 13911// Context sets the context to be used in this call's Do method. Any 13912// pending HTTP request will be aborted if the provided context is 13913// canceled. 13914func (c *TablesListCall) Context(ctx context.Context) *TablesListCall { 13915 c.ctx_ = ctx 13916 return c 13917} 13918 13919// Header returns an http.Header that can be modified by the caller to 13920// add HTTP headers to the request. 13921func (c *TablesListCall) Header() http.Header { 13922 if c.header_ == nil { 13923 c.header_ = make(http.Header) 13924 } 13925 return c.header_ 13926} 13927 13928func (c *TablesListCall) doRequest(alt string) (*http.Response, error) { 13929 reqHeaders := make(http.Header) 13930 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 13931 for k, v := range c.header_ { 13932 reqHeaders[k] = v 13933 } 13934 reqHeaders.Set("User-Agent", c.s.userAgent()) 13935 if c.ifNoneMatch_ != "" { 13936 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 13937 } 13938 var body io.Reader = nil 13939 c.urlParams_.Set("alt", alt) 13940 c.urlParams_.Set("prettyPrint", "false") 13941 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables") 13942 urls += "?" + c.urlParams_.Encode() 13943 req, err := http.NewRequest("GET", urls, body) 13944 if err != nil { 13945 return nil, err 13946 } 13947 req.Header = reqHeaders 13948 googleapi.Expand(req.URL, map[string]string{ 13949 "projectId": c.projectId, 13950 "datasetId": c.datasetId, 13951 }) 13952 return gensupport.SendRequest(c.ctx_, c.s.client, req) 13953} 13954 13955// Do executes the "bigquery.tables.list" call. 13956// Exactly one of *TableList or error will be non-nil. Any non-2xx 13957// status code is an error. Response headers are in either 13958// *TableList.ServerResponse.Header or (if a response was returned at 13959// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 13960// to check whether the returned error was because 13961// http.StatusNotModified was returned. 13962func (c *TablesListCall) Do(opts ...googleapi.CallOption) (*TableList, error) { 13963 gensupport.SetOptions(c.urlParams_, opts...) 13964 res, err := c.doRequest("json") 13965 if res != nil && res.StatusCode == http.StatusNotModified { 13966 if res.Body != nil { 13967 res.Body.Close() 13968 } 13969 return nil, &googleapi.Error{ 13970 Code: res.StatusCode, 13971 Header: res.Header, 13972 } 13973 } 13974 if err != nil { 13975 return nil, err 13976 } 13977 defer googleapi.CloseBody(res) 13978 if err := googleapi.CheckResponse(res); err != nil { 13979 return nil, err 13980 } 13981 ret := &TableList{ 13982 ServerResponse: googleapi.ServerResponse{ 13983 Header: res.Header, 13984 HTTPStatusCode: res.StatusCode, 13985 }, 13986 } 13987 target := &ret 13988 if err := gensupport.DecodeResponse(target, res); err != nil { 13989 return nil, err 13990 } 13991 return ret, nil 13992 // { 13993 // "description": "Lists all tables in the specified dataset. Requires the READER dataset role.", 13994 // "httpMethod": "GET", 13995 // "id": "bigquery.tables.list", 13996 // "parameterOrder": [ 13997 // "projectId", 13998 // "datasetId" 13999 // ], 14000 // "parameters": { 14001 // "datasetId": { 14002 // "description": "Dataset ID of the tables to list", 14003 // "location": "path", 14004 // "required": true, 14005 // "type": "string" 14006 // }, 14007 // "maxResults": { 14008 // "description": "Maximum number of results to return", 14009 // "format": "uint32", 14010 // "location": "query", 14011 // "type": "integer" 14012 // }, 14013 // "pageToken": { 14014 // "description": "Page token, returned by a previous call, to request the next page of results", 14015 // "location": "query", 14016 // "type": "string" 14017 // }, 14018 // "projectId": { 14019 // "description": "Project ID of the tables to list", 14020 // "location": "path", 14021 // "required": true, 14022 // "type": "string" 14023 // } 14024 // }, 14025 // "path": "projects/{projectId}/datasets/{datasetId}/tables", 14026 // "response": { 14027 // "$ref": "TableList" 14028 // }, 14029 // "scopes": [ 14030 // "https://www.googleapis.com/auth/bigquery", 14031 // "https://www.googleapis.com/auth/cloud-platform", 14032 // "https://www.googleapis.com/auth/cloud-platform.read-only" 14033 // ] 14034 // } 14035 14036} 14037 14038// Pages invokes f for each page of results. 14039// A non-nil error returned from f will halt the iteration. 14040// The provided context supersedes any context provided to the Context method. 14041func (c *TablesListCall) Pages(ctx context.Context, f func(*TableList) error) error { 14042 c.ctx_ = ctx 14043 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 14044 for { 14045 x, err := c.Do() 14046 if err != nil { 14047 return err 14048 } 14049 if err := f(x); err != nil { 14050 return err 14051 } 14052 if x.NextPageToken == "" { 14053 return nil 14054 } 14055 c.PageToken(x.NextPageToken) 14056 } 14057} 14058 14059// method id "bigquery.tables.patch": 14060 14061type TablesPatchCall struct { 14062 s *Service 14063 projectId string 14064 datasetId string 14065 tableId string 14066 table *Table 14067 urlParams_ gensupport.URLParams 14068 ctx_ context.Context 14069 header_ http.Header 14070} 14071 14072// Patch: Updates information in an existing table. The update method 14073// replaces the entire table resource, whereas the patch method only 14074// replaces fields that are provided in the submitted table resource. 14075// This method supports patch semantics. 14076// 14077// - datasetId: Dataset ID of the table to update. 14078// - projectId: Project ID of the table to update. 14079// - tableId: Table ID of the table to update. 14080func (r *TablesService) Patch(projectId string, datasetId string, tableId string, table *Table) *TablesPatchCall { 14081 c := &TablesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 14082 c.projectId = projectId 14083 c.datasetId = datasetId 14084 c.tableId = tableId 14085 c.table = table 14086 return c 14087} 14088 14089// Fields allows partial responses to be retrieved. See 14090// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 14091// for more information. 14092func (c *TablesPatchCall) Fields(s ...googleapi.Field) *TablesPatchCall { 14093 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 14094 return c 14095} 14096 14097// Context sets the context to be used in this call's Do method. Any 14098// pending HTTP request will be aborted if the provided context is 14099// canceled. 14100func (c *TablesPatchCall) Context(ctx context.Context) *TablesPatchCall { 14101 c.ctx_ = ctx 14102 return c 14103} 14104 14105// Header returns an http.Header that can be modified by the caller to 14106// add HTTP headers to the request. 14107func (c *TablesPatchCall) Header() http.Header { 14108 if c.header_ == nil { 14109 c.header_ = make(http.Header) 14110 } 14111 return c.header_ 14112} 14113 14114func (c *TablesPatchCall) doRequest(alt string) (*http.Response, error) { 14115 reqHeaders := make(http.Header) 14116 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 14117 for k, v := range c.header_ { 14118 reqHeaders[k] = v 14119 } 14120 reqHeaders.Set("User-Agent", c.s.userAgent()) 14121 var body io.Reader = nil 14122 body, err := googleapi.WithoutDataWrapper.JSONReader(c.table) 14123 if err != nil { 14124 return nil, err 14125 } 14126 reqHeaders.Set("Content-Type", "application/json") 14127 c.urlParams_.Set("alt", alt) 14128 c.urlParams_.Set("prettyPrint", "false") 14129 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}") 14130 urls += "?" + c.urlParams_.Encode() 14131 req, err := http.NewRequest("PATCH", urls, body) 14132 if err != nil { 14133 return nil, err 14134 } 14135 req.Header = reqHeaders 14136 googleapi.Expand(req.URL, map[string]string{ 14137 "projectId": c.projectId, 14138 "datasetId": c.datasetId, 14139 "tableId": c.tableId, 14140 }) 14141 return gensupport.SendRequest(c.ctx_, c.s.client, req) 14142} 14143 14144// Do executes the "bigquery.tables.patch" call. 14145// Exactly one of *Table or error will be non-nil. Any non-2xx status 14146// code is an error. Response headers are in either 14147// *Table.ServerResponse.Header or (if a response was returned at all) 14148// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 14149// check whether the returned error was because http.StatusNotModified 14150// was returned. 14151func (c *TablesPatchCall) Do(opts ...googleapi.CallOption) (*Table, error) { 14152 gensupport.SetOptions(c.urlParams_, opts...) 14153 res, err := c.doRequest("json") 14154 if res != nil && res.StatusCode == http.StatusNotModified { 14155 if res.Body != nil { 14156 res.Body.Close() 14157 } 14158 return nil, &googleapi.Error{ 14159 Code: res.StatusCode, 14160 Header: res.Header, 14161 } 14162 } 14163 if err != nil { 14164 return nil, err 14165 } 14166 defer googleapi.CloseBody(res) 14167 if err := googleapi.CheckResponse(res); err != nil { 14168 return nil, err 14169 } 14170 ret := &Table{ 14171 ServerResponse: googleapi.ServerResponse{ 14172 Header: res.Header, 14173 HTTPStatusCode: res.StatusCode, 14174 }, 14175 } 14176 target := &ret 14177 if err := gensupport.DecodeResponse(target, res); err != nil { 14178 return nil, err 14179 } 14180 return ret, nil 14181 // { 14182 // "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.", 14183 // "httpMethod": "PATCH", 14184 // "id": "bigquery.tables.patch", 14185 // "parameterOrder": [ 14186 // "projectId", 14187 // "datasetId", 14188 // "tableId" 14189 // ], 14190 // "parameters": { 14191 // "datasetId": { 14192 // "description": "Dataset ID of the table to update", 14193 // "location": "path", 14194 // "required": true, 14195 // "type": "string" 14196 // }, 14197 // "projectId": { 14198 // "description": "Project ID of the table to update", 14199 // "location": "path", 14200 // "required": true, 14201 // "type": "string" 14202 // }, 14203 // "tableId": { 14204 // "description": "Table ID of the table to update", 14205 // "location": "path", 14206 // "required": true, 14207 // "type": "string" 14208 // } 14209 // }, 14210 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", 14211 // "request": { 14212 // "$ref": "Table" 14213 // }, 14214 // "response": { 14215 // "$ref": "Table" 14216 // }, 14217 // "scopes": [ 14218 // "https://www.googleapis.com/auth/bigquery", 14219 // "https://www.googleapis.com/auth/cloud-platform" 14220 // ] 14221 // } 14222 14223} 14224 14225// method id "bigquery.tables.setIamPolicy": 14226 14227type TablesSetIamPolicyCall struct { 14228 s *Service 14229 resource string 14230 setiampolicyrequest *SetIamPolicyRequest 14231 urlParams_ gensupport.URLParams 14232 ctx_ context.Context 14233 header_ http.Header 14234} 14235 14236// SetIamPolicy: Sets the access control policy on the specified 14237// resource. Replaces any existing policy. Can return `NOT_FOUND`, 14238// `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. 14239// 14240// - resource: REQUIRED: The resource for which the policy is being 14241// specified. See the operation documentation for the appropriate 14242// value for this field. 14243func (r *TablesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *TablesSetIamPolicyCall { 14244 c := &TablesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 14245 c.resource = resource 14246 c.setiampolicyrequest = setiampolicyrequest 14247 return c 14248} 14249 14250// Fields allows partial responses to be retrieved. See 14251// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 14252// for more information. 14253func (c *TablesSetIamPolicyCall) Fields(s ...googleapi.Field) *TablesSetIamPolicyCall { 14254 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 14255 return c 14256} 14257 14258// Context sets the context to be used in this call's Do method. Any 14259// pending HTTP request will be aborted if the provided context is 14260// canceled. 14261func (c *TablesSetIamPolicyCall) Context(ctx context.Context) *TablesSetIamPolicyCall { 14262 c.ctx_ = ctx 14263 return c 14264} 14265 14266// Header returns an http.Header that can be modified by the caller to 14267// add HTTP headers to the request. 14268func (c *TablesSetIamPolicyCall) Header() http.Header { 14269 if c.header_ == nil { 14270 c.header_ = make(http.Header) 14271 } 14272 return c.header_ 14273} 14274 14275func (c *TablesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 14276 reqHeaders := make(http.Header) 14277 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 14278 for k, v := range c.header_ { 14279 reqHeaders[k] = v 14280 } 14281 reqHeaders.Set("User-Agent", c.s.userAgent()) 14282 var body io.Reader = nil 14283 body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) 14284 if err != nil { 14285 return nil, err 14286 } 14287 reqHeaders.Set("Content-Type", "application/json") 14288 c.urlParams_.Set("alt", alt) 14289 c.urlParams_.Set("prettyPrint", "false") 14290 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:setIamPolicy") 14291 urls += "?" + c.urlParams_.Encode() 14292 req, err := http.NewRequest("POST", urls, body) 14293 if err != nil { 14294 return nil, err 14295 } 14296 req.Header = reqHeaders 14297 googleapi.Expand(req.URL, map[string]string{ 14298 "resource": c.resource, 14299 }) 14300 return gensupport.SendRequest(c.ctx_, c.s.client, req) 14301} 14302 14303// Do executes the "bigquery.tables.setIamPolicy" call. 14304// Exactly one of *Policy or error will be non-nil. Any non-2xx status 14305// code is an error. Response headers are in either 14306// *Policy.ServerResponse.Header or (if a response was returned at all) 14307// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 14308// check whether the returned error was because http.StatusNotModified 14309// was returned. 14310func (c *TablesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 14311 gensupport.SetOptions(c.urlParams_, opts...) 14312 res, err := c.doRequest("json") 14313 if res != nil && res.StatusCode == http.StatusNotModified { 14314 if res.Body != nil { 14315 res.Body.Close() 14316 } 14317 return nil, &googleapi.Error{ 14318 Code: res.StatusCode, 14319 Header: res.Header, 14320 } 14321 } 14322 if err != nil { 14323 return nil, err 14324 } 14325 defer googleapi.CloseBody(res) 14326 if err := googleapi.CheckResponse(res); err != nil { 14327 return nil, err 14328 } 14329 ret := &Policy{ 14330 ServerResponse: googleapi.ServerResponse{ 14331 Header: res.Header, 14332 HTTPStatusCode: res.StatusCode, 14333 }, 14334 } 14335 target := &ret 14336 if err := gensupport.DecodeResponse(target, res); err != nil { 14337 return nil, err 14338 } 14339 return ret, nil 14340 // { 14341 // "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", 14342 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}:setIamPolicy", 14343 // "httpMethod": "POST", 14344 // "id": "bigquery.tables.setIamPolicy", 14345 // "parameterOrder": [ 14346 // "resource" 14347 // ], 14348 // "parameters": { 14349 // "resource": { 14350 // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", 14351 // "location": "path", 14352 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+$", 14353 // "required": true, 14354 // "type": "string" 14355 // } 14356 // }, 14357 // "path": "{+resource}:setIamPolicy", 14358 // "request": { 14359 // "$ref": "SetIamPolicyRequest" 14360 // }, 14361 // "response": { 14362 // "$ref": "Policy" 14363 // }, 14364 // "scopes": [ 14365 // "https://www.googleapis.com/auth/bigquery", 14366 // "https://www.googleapis.com/auth/cloud-platform" 14367 // ] 14368 // } 14369 14370} 14371 14372// method id "bigquery.tables.testIamPermissions": 14373 14374type TablesTestIamPermissionsCall struct { 14375 s *Service 14376 resource string 14377 testiampermissionsrequest *TestIamPermissionsRequest 14378 urlParams_ gensupport.URLParams 14379 ctx_ context.Context 14380 header_ http.Header 14381} 14382 14383// TestIamPermissions: Returns permissions that a caller has on the 14384// specified resource. If the resource does not exist, this will return 14385// an empty set of permissions, not a `NOT_FOUND` error. Note: This 14386// operation is designed to be used for building permission-aware UIs 14387// and command-line tools, not for authorization checking. This 14388// operation may "fail open" without warning. 14389// 14390// - resource: REQUIRED: The resource for which the policy detail is 14391// being requested. See the operation documentation for the 14392// appropriate value for this field. 14393func (r *TablesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *TablesTestIamPermissionsCall { 14394 c := &TablesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 14395 c.resource = resource 14396 c.testiampermissionsrequest = testiampermissionsrequest 14397 return c 14398} 14399 14400// Fields allows partial responses to be retrieved. See 14401// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 14402// for more information. 14403func (c *TablesTestIamPermissionsCall) Fields(s ...googleapi.Field) *TablesTestIamPermissionsCall { 14404 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 14405 return c 14406} 14407 14408// Context sets the context to be used in this call's Do method. Any 14409// pending HTTP request will be aborted if the provided context is 14410// canceled. 14411func (c *TablesTestIamPermissionsCall) Context(ctx context.Context) *TablesTestIamPermissionsCall { 14412 c.ctx_ = ctx 14413 return c 14414} 14415 14416// Header returns an http.Header that can be modified by the caller to 14417// add HTTP headers to the request. 14418func (c *TablesTestIamPermissionsCall) Header() http.Header { 14419 if c.header_ == nil { 14420 c.header_ = make(http.Header) 14421 } 14422 return c.header_ 14423} 14424 14425func (c *TablesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { 14426 reqHeaders := make(http.Header) 14427 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 14428 for k, v := range c.header_ { 14429 reqHeaders[k] = v 14430 } 14431 reqHeaders.Set("User-Agent", c.s.userAgent()) 14432 var body io.Reader = nil 14433 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) 14434 if err != nil { 14435 return nil, err 14436 } 14437 reqHeaders.Set("Content-Type", "application/json") 14438 c.urlParams_.Set("alt", alt) 14439 c.urlParams_.Set("prettyPrint", "false") 14440 urls := googleapi.ResolveRelative(c.s.BasePath, "{+resource}:testIamPermissions") 14441 urls += "?" + c.urlParams_.Encode() 14442 req, err := http.NewRequest("POST", urls, body) 14443 if err != nil { 14444 return nil, err 14445 } 14446 req.Header = reqHeaders 14447 googleapi.Expand(req.URL, map[string]string{ 14448 "resource": c.resource, 14449 }) 14450 return gensupport.SendRequest(c.ctx_, c.s.client, req) 14451} 14452 14453// Do executes the "bigquery.tables.testIamPermissions" call. 14454// Exactly one of *TestIamPermissionsResponse or error will be non-nil. 14455// Any non-2xx status code is an error. Response headers are in either 14456// *TestIamPermissionsResponse.ServerResponse.Header or (if a response 14457// was returned at all) in error.(*googleapi.Error).Header. Use 14458// googleapi.IsNotModified to check whether the returned error was 14459// because http.StatusNotModified was returned. 14460func (c *TablesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { 14461 gensupport.SetOptions(c.urlParams_, opts...) 14462 res, err := c.doRequest("json") 14463 if res != nil && res.StatusCode == http.StatusNotModified { 14464 if res.Body != nil { 14465 res.Body.Close() 14466 } 14467 return nil, &googleapi.Error{ 14468 Code: res.StatusCode, 14469 Header: res.Header, 14470 } 14471 } 14472 if err != nil { 14473 return nil, err 14474 } 14475 defer googleapi.CloseBody(res) 14476 if err := googleapi.CheckResponse(res); err != nil { 14477 return nil, err 14478 } 14479 ret := &TestIamPermissionsResponse{ 14480 ServerResponse: googleapi.ServerResponse{ 14481 Header: res.Header, 14482 HTTPStatusCode: res.StatusCode, 14483 }, 14484 } 14485 target := &ret 14486 if err := gensupport.DecodeResponse(target, res); err != nil { 14487 return nil, err 14488 } 14489 return ret, nil 14490 // { 14491 // "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.", 14492 // "flatPath": "projects/{projectsId}/datasets/{datasetsId}/tables/{tablesId}:testIamPermissions", 14493 // "httpMethod": "POST", 14494 // "id": "bigquery.tables.testIamPermissions", 14495 // "parameterOrder": [ 14496 // "resource" 14497 // ], 14498 // "parameters": { 14499 // "resource": { 14500 // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", 14501 // "location": "path", 14502 // "pattern": "^projects/[^/]+/datasets/[^/]+/tables/[^/]+$", 14503 // "required": true, 14504 // "type": "string" 14505 // } 14506 // }, 14507 // "path": "{+resource}:testIamPermissions", 14508 // "request": { 14509 // "$ref": "TestIamPermissionsRequest" 14510 // }, 14511 // "response": { 14512 // "$ref": "TestIamPermissionsResponse" 14513 // }, 14514 // "scopes": [ 14515 // "https://www.googleapis.com/auth/bigquery", 14516 // "https://www.googleapis.com/auth/bigquery.readonly", 14517 // "https://www.googleapis.com/auth/cloud-platform", 14518 // "https://www.googleapis.com/auth/cloud-platform.read-only" 14519 // ] 14520 // } 14521 14522} 14523 14524// method id "bigquery.tables.update": 14525 14526type TablesUpdateCall struct { 14527 s *Service 14528 projectId string 14529 datasetId string 14530 tableId string 14531 table *Table 14532 urlParams_ gensupport.URLParams 14533 ctx_ context.Context 14534 header_ http.Header 14535} 14536 14537// Update: Updates information in an existing table. The update method 14538// replaces the entire table resource, whereas the patch method only 14539// replaces fields that are provided in the submitted table resource. 14540// 14541// - datasetId: Dataset ID of the table to update. 14542// - projectId: Project ID of the table to update. 14543// - tableId: Table ID of the table to update. 14544func (r *TablesService) Update(projectId string, datasetId string, tableId string, table *Table) *TablesUpdateCall { 14545 c := &TablesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 14546 c.projectId = projectId 14547 c.datasetId = datasetId 14548 c.tableId = tableId 14549 c.table = table 14550 return c 14551} 14552 14553// Fields allows partial responses to be retrieved. See 14554// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 14555// for more information. 14556func (c *TablesUpdateCall) Fields(s ...googleapi.Field) *TablesUpdateCall { 14557 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 14558 return c 14559} 14560 14561// Context sets the context to be used in this call's Do method. Any 14562// pending HTTP request will be aborted if the provided context is 14563// canceled. 14564func (c *TablesUpdateCall) Context(ctx context.Context) *TablesUpdateCall { 14565 c.ctx_ = ctx 14566 return c 14567} 14568 14569// Header returns an http.Header that can be modified by the caller to 14570// add HTTP headers to the request. 14571func (c *TablesUpdateCall) Header() http.Header { 14572 if c.header_ == nil { 14573 c.header_ = make(http.Header) 14574 } 14575 return c.header_ 14576} 14577 14578func (c *TablesUpdateCall) doRequest(alt string) (*http.Response, error) { 14579 reqHeaders := make(http.Header) 14580 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210410") 14581 for k, v := range c.header_ { 14582 reqHeaders[k] = v 14583 } 14584 reqHeaders.Set("User-Agent", c.s.userAgent()) 14585 var body io.Reader = nil 14586 body, err := googleapi.WithoutDataWrapper.JSONReader(c.table) 14587 if err != nil { 14588 return nil, err 14589 } 14590 reqHeaders.Set("Content-Type", "application/json") 14591 c.urlParams_.Set("alt", alt) 14592 c.urlParams_.Set("prettyPrint", "false") 14593 urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{projectId}/datasets/{datasetId}/tables/{tableId}") 14594 urls += "?" + c.urlParams_.Encode() 14595 req, err := http.NewRequest("PUT", urls, body) 14596 if err != nil { 14597 return nil, err 14598 } 14599 req.Header = reqHeaders 14600 googleapi.Expand(req.URL, map[string]string{ 14601 "projectId": c.projectId, 14602 "datasetId": c.datasetId, 14603 "tableId": c.tableId, 14604 }) 14605 return gensupport.SendRequest(c.ctx_, c.s.client, req) 14606} 14607 14608// Do executes the "bigquery.tables.update" call. 14609// Exactly one of *Table or error will be non-nil. Any non-2xx status 14610// code is an error. Response headers are in either 14611// *Table.ServerResponse.Header or (if a response was returned at all) 14612// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 14613// check whether the returned error was because http.StatusNotModified 14614// was returned. 14615func (c *TablesUpdateCall) Do(opts ...googleapi.CallOption) (*Table, error) { 14616 gensupport.SetOptions(c.urlParams_, opts...) 14617 res, err := c.doRequest("json") 14618 if res != nil && res.StatusCode == http.StatusNotModified { 14619 if res.Body != nil { 14620 res.Body.Close() 14621 } 14622 return nil, &googleapi.Error{ 14623 Code: res.StatusCode, 14624 Header: res.Header, 14625 } 14626 } 14627 if err != nil { 14628 return nil, err 14629 } 14630 defer googleapi.CloseBody(res) 14631 if err := googleapi.CheckResponse(res); err != nil { 14632 return nil, err 14633 } 14634 ret := &Table{ 14635 ServerResponse: googleapi.ServerResponse{ 14636 Header: res.Header, 14637 HTTPStatusCode: res.StatusCode, 14638 }, 14639 } 14640 target := &ret 14641 if err := gensupport.DecodeResponse(target, res); err != nil { 14642 return nil, err 14643 } 14644 return ret, nil 14645 // { 14646 // "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.", 14647 // "httpMethod": "PUT", 14648 // "id": "bigquery.tables.update", 14649 // "parameterOrder": [ 14650 // "projectId", 14651 // "datasetId", 14652 // "tableId" 14653 // ], 14654 // "parameters": { 14655 // "datasetId": { 14656 // "description": "Dataset ID of the table to update", 14657 // "location": "path", 14658 // "required": true, 14659 // "type": "string" 14660 // }, 14661 // "projectId": { 14662 // "description": "Project ID of the table to update", 14663 // "location": "path", 14664 // "required": true, 14665 // "type": "string" 14666 // }, 14667 // "tableId": { 14668 // "description": "Table ID of the table to update", 14669 // "location": "path", 14670 // "required": true, 14671 // "type": "string" 14672 // } 14673 // }, 14674 // "path": "projects/{projectId}/datasets/{datasetId}/tables/{tableId}", 14675 // "request": { 14676 // "$ref": "Table" 14677 // }, 14678 // "response": { 14679 // "$ref": "Table" 14680 // }, 14681 // "scopes": [ 14682 // "https://www.googleapis.com/auth/bigquery", 14683 // "https://www.googleapis.com/auth/cloud-platform" 14684 // ] 14685 // } 14686 14687} 14688