1// Copyright 2019 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 firebase provides access to the Firebase Management API. 8// 9// For product documentation, see: https://firebase.google.com 10// 11// Creating a client 12// 13// Usage example: 14// 15// import "google.golang.org/api/firebase/v1beta1" 16// ... 17// ctx := context.Background() 18// firebaseService, err := firebase.NewService(ctx) 19// 20// In this example, Google Application Default Credentials are used for authentication. 21// 22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. 23// 24// Other authentication options 25// 26// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes: 27// 28// firebaseService, err := firebase.NewService(ctx, option.WithScopes(firebase.FirebaseReadonlyScope)) 29// 30// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: 31// 32// firebaseService, err := firebase.NewService(ctx, option.WithAPIKey("AIza...")) 33// 34// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: 35// 36// config := &oauth2.Config{...} 37// // ... 38// token, err := config.Exchange(ctx, ...) 39// firebaseService, err := firebase.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) 40// 41// See https://godoc.org/google.golang.org/api/option/ for details on options. 42package firebase // import "google.golang.org/api/firebase/v1beta1" 43 44import ( 45 "bytes" 46 "context" 47 "encoding/json" 48 "errors" 49 "fmt" 50 "io" 51 "net/http" 52 "net/url" 53 "strconv" 54 "strings" 55 56 googleapi "google.golang.org/api/googleapi" 57 gensupport "google.golang.org/api/internal/gensupport" 58 option "google.golang.org/api/option" 59 htransport "google.golang.org/api/transport/http" 60) 61 62// Always reference these packages, just in case the auto-generated code 63// below doesn't. 64var _ = bytes.NewBuffer 65var _ = strconv.Itoa 66var _ = fmt.Sprintf 67var _ = json.NewDecoder 68var _ = io.Copy 69var _ = url.Parse 70var _ = gensupport.MarshalJSON 71var _ = googleapi.Version 72var _ = errors.New 73var _ = strings.Replace 74var _ = context.Canceled 75 76const apiId = "firebase:v1beta1" 77const apiName = "firebase" 78const apiVersion = "v1beta1" 79const basePath = "https://firebase.googleapis.com/" 80 81// OAuth2 scopes used by this API. 82const ( 83 // View and manage your data across Google Cloud Platform services 84 CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" 85 86 // View your data across Google Cloud Platform services 87 CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" 88 89 // View and administer all your Firebase data and settings 90 FirebaseScope = "https://www.googleapis.com/auth/firebase" 91 92 // View all your Firebase data and settings 93 FirebaseReadonlyScope = "https://www.googleapis.com/auth/firebase.readonly" 94) 95 96// NewService creates a new Service. 97func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 98 scopesOption := option.WithScopes( 99 "https://www.googleapis.com/auth/cloud-platform", 100 "https://www.googleapis.com/auth/cloud-platform.read-only", 101 "https://www.googleapis.com/auth/firebase", 102 "https://www.googleapis.com/auth/firebase.readonly", 103 ) 104 // NOTE: prepend, so we don't override user-specified scopes. 105 opts = append([]option.ClientOption{scopesOption}, opts...) 106 client, endpoint, err := htransport.NewClient(ctx, opts...) 107 if err != nil { 108 return nil, err 109 } 110 s, err := New(client) 111 if err != nil { 112 return nil, err 113 } 114 if endpoint != "" { 115 s.BasePath = endpoint 116 } 117 return s, nil 118} 119 120// New creates a new Service. It uses the provided http.Client for requests. 121// 122// Deprecated: please use NewService instead. 123// To provide a custom HTTP client, use option.WithHTTPClient. 124// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 125func New(client *http.Client) (*Service, error) { 126 if client == nil { 127 return nil, errors.New("client is nil") 128 } 129 s := &Service{client: client, BasePath: basePath} 130 s.AvailableProjects = NewAvailableProjectsService(s) 131 s.Operations = NewOperationsService(s) 132 s.Projects = NewProjectsService(s) 133 return s, nil 134} 135 136type Service struct { 137 client *http.Client 138 BasePath string // API endpoint base URL 139 UserAgent string // optional additional User-Agent fragment 140 141 AvailableProjects *AvailableProjectsService 142 143 Operations *OperationsService 144 145 Projects *ProjectsService 146} 147 148func (s *Service) userAgent() string { 149 if s.UserAgent == "" { 150 return googleapi.UserAgent 151 } 152 return googleapi.UserAgent + " " + s.UserAgent 153} 154 155func NewAvailableProjectsService(s *Service) *AvailableProjectsService { 156 rs := &AvailableProjectsService{s: s} 157 return rs 158} 159 160type AvailableProjectsService struct { 161 s *Service 162} 163 164func NewOperationsService(s *Service) *OperationsService { 165 rs := &OperationsService{s: s} 166 return rs 167} 168 169type OperationsService struct { 170 s *Service 171} 172 173func NewProjectsService(s *Service) *ProjectsService { 174 rs := &ProjectsService{s: s} 175 rs.AndroidApps = NewProjectsAndroidAppsService(s) 176 rs.AvailableLocations = NewProjectsAvailableLocationsService(s) 177 rs.DefaultLocation = NewProjectsDefaultLocationService(s) 178 rs.IosApps = NewProjectsIosAppsService(s) 179 rs.WebApps = NewProjectsWebAppsService(s) 180 return rs 181} 182 183type ProjectsService struct { 184 s *Service 185 186 AndroidApps *ProjectsAndroidAppsService 187 188 AvailableLocations *ProjectsAvailableLocationsService 189 190 DefaultLocation *ProjectsDefaultLocationService 191 192 IosApps *ProjectsIosAppsService 193 194 WebApps *ProjectsWebAppsService 195} 196 197func NewProjectsAndroidAppsService(s *Service) *ProjectsAndroidAppsService { 198 rs := &ProjectsAndroidAppsService{s: s} 199 rs.Sha = NewProjectsAndroidAppsShaService(s) 200 return rs 201} 202 203type ProjectsAndroidAppsService struct { 204 s *Service 205 206 Sha *ProjectsAndroidAppsShaService 207} 208 209func NewProjectsAndroidAppsShaService(s *Service) *ProjectsAndroidAppsShaService { 210 rs := &ProjectsAndroidAppsShaService{s: s} 211 return rs 212} 213 214type ProjectsAndroidAppsShaService struct { 215 s *Service 216} 217 218func NewProjectsAvailableLocationsService(s *Service) *ProjectsAvailableLocationsService { 219 rs := &ProjectsAvailableLocationsService{s: s} 220 return rs 221} 222 223type ProjectsAvailableLocationsService struct { 224 s *Service 225} 226 227func NewProjectsDefaultLocationService(s *Service) *ProjectsDefaultLocationService { 228 rs := &ProjectsDefaultLocationService{s: s} 229 return rs 230} 231 232type ProjectsDefaultLocationService struct { 233 s *Service 234} 235 236func NewProjectsIosAppsService(s *Service) *ProjectsIosAppsService { 237 rs := &ProjectsIosAppsService{s: s} 238 return rs 239} 240 241type ProjectsIosAppsService struct { 242 s *Service 243} 244 245func NewProjectsWebAppsService(s *Service) *ProjectsWebAppsService { 246 rs := &ProjectsWebAppsService{s: s} 247 return rs 248} 249 250type ProjectsWebAppsService struct { 251 s *Service 252} 253 254// AddFirebaseRequest: All fields are required. 255type AddFirebaseRequest struct { 256 // LocationId: Deprecated. Instead, to set your project's default GCP 257 // resource location, 258 // call 259 // [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize) 260 // afte 261 // r you add Firebase resources to your project. 262 // <br> 263 // <br>The ID of the project's default GCP resource location. The 264 // location 265 // must be one of the available 266 // [GCP 267 // resource 268 // locations](https://firebase.google.com/docs/projects/location 269 // s). 270 LocationId string `json:"locationId,omitempty"` 271 272 // RegionCode: Deprecated. Instead, to link your Project with a Google 273 // Analytics account, 274 // call 275 // [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytics) 276 // afte 277 // r you add Firebase resources to your Project. 278 // <br> 279 // <br>The region code (CLDR) that the account will use for Firebase 280 // Analytics 281 // data. 282 // <br>For example: US, GB, or DE 283 // <br> 284 // <br>In Java, use `com.google.i18n.identifiers.RegionCode`. 285 RegionCode string `json:"regionCode,omitempty"` 286 287 // TimeZone: Deprecated. Instead, to link your Project with a Google 288 // Analytics account, 289 // call 290 // [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytics) 291 // afte 292 // r you add Firebase resources to your Project. 293 // <br> 294 // <br>The time zone that the account will use for Firebase Analytics 295 // data. 296 // <br>For example: America/Los_Angeles or Africa/Abidjan 297 TimeZone string `json:"timeZone,omitempty"` 298 299 // ForceSendFields is a list of field names (e.g. "LocationId") to 300 // unconditionally include in API requests. By default, fields with 301 // empty values are omitted from API requests. However, any non-pointer, 302 // non-interface field appearing in ForceSendFields will be sent to the 303 // server regardless of whether the field is empty or not. This may be 304 // used to include empty fields in Patch requests. 305 ForceSendFields []string `json:"-"` 306 307 // NullFields is a list of field names (e.g. "LocationId") to include in 308 // API requests with the JSON null value. By default, fields with empty 309 // values are omitted from API requests. However, any field with an 310 // empty value appearing in NullFields will be sent to the server as 311 // null. It is an error if a field in this list has a non-empty value. 312 // This may be used to include null fields in Patch requests. 313 NullFields []string `json:"-"` 314} 315 316func (s *AddFirebaseRequest) MarshalJSON() ([]byte, error) { 317 type NoMethod AddFirebaseRequest 318 raw := NoMethod(*s) 319 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 320} 321 322type AddGoogleAnalyticsRequest struct { 323 // AnalyticsAccountId: The ID for the existing 324 // [Google Analytics account](http://www.google.com/analytics/) that 325 // you 326 // want to link with your `FirebaseProject`. 327 // <br> 328 // <br>Specifying this field will provision a new Google 329 // Analytics 330 // property in your Google Analytics account and associate the new 331 // property 332 // with your `FirebaseProject`. 333 AnalyticsAccountId string `json:"analyticsAccountId,omitempty"` 334 335 // AnalyticsPropertyId: The ID for the existing Google Analytics 336 // property that you want to 337 // associate with your `FirebaseProject`. 338 AnalyticsPropertyId string `json:"analyticsPropertyId,omitempty"` 339 340 // ForceSendFields is a list of field names (e.g. "AnalyticsAccountId") 341 // to unconditionally include in API requests. By default, fields with 342 // empty values are omitted from API requests. However, any non-pointer, 343 // non-interface field appearing in ForceSendFields will be sent to the 344 // server regardless of whether the field is empty or not. This may be 345 // used to include empty fields in Patch requests. 346 ForceSendFields []string `json:"-"` 347 348 // NullFields is a list of field names (e.g. "AnalyticsAccountId") to 349 // include in API requests with the JSON null value. By default, fields 350 // with empty values are omitted from API requests. However, any field 351 // with an empty value appearing in NullFields will be sent to the 352 // server as null. It is an error if a field in this list has a 353 // non-empty value. This may be used to include null fields in Patch 354 // requests. 355 NullFields []string `json:"-"` 356} 357 358func (s *AddGoogleAnalyticsRequest) MarshalJSON() ([]byte, error) { 359 type NoMethod AddGoogleAnalyticsRequest 360 raw := NoMethod(*s) 361 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 362} 363 364type AdminSdkConfig struct { 365 // DatabaseURL: The default Firebase Realtime Database URL. 366 DatabaseURL string `json:"databaseURL,omitempty"` 367 368 // LocationId: The ID of the project's default GCP resource location. 369 // The location is one 370 // of the available 371 // [GCP 372 // resource 373 // locations](https://firebase.google.com/docs/projects/location 374 // s). <br> 375 // <br>This field is omitted if the default GCP resource location has 376 // not been 377 // finalized yet. To set your project's default GCP resource 378 // location, 379 // call 380 // [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize) 381 // afte 382 // r you add Firebase services to your project. 383 LocationId string `json:"locationId,omitempty"` 384 385 // ProjectId: Immutable. The globally unique, user-assigned project ID 386 // of the parent 387 // Project. 388 ProjectId string `json:"projectId,omitempty"` 389 390 // StorageBucket: The default Cloud Storage for Firebase storage bucket 391 // name. 392 StorageBucket string `json:"storageBucket,omitempty"` 393 394 // ServerResponse contains the HTTP response code and headers from the 395 // server. 396 googleapi.ServerResponse `json:"-"` 397 398 // ForceSendFields is a list of field names (e.g. "DatabaseURL") to 399 // unconditionally include in API requests. By default, fields with 400 // empty values are omitted from API requests. However, any non-pointer, 401 // non-interface field appearing in ForceSendFields will be sent to the 402 // server regardless of whether the field is empty or not. This may be 403 // used to include empty fields in Patch requests. 404 ForceSendFields []string `json:"-"` 405 406 // NullFields is a list of field names (e.g. "DatabaseURL") to include 407 // in API requests with the JSON null value. By default, fields with 408 // empty values are omitted from API requests. However, any field with 409 // an empty value appearing in NullFields will be sent to the server as 410 // null. It is an error if a field in this list has a non-empty value. 411 // This may be used to include null fields in Patch requests. 412 NullFields []string `json:"-"` 413} 414 415func (s *AdminSdkConfig) MarshalJSON() ([]byte, error) { 416 type NoMethod AdminSdkConfig 417 raw := NoMethod(*s) 418 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 419} 420 421type AnalyticsDetails struct { 422 // AnalyticsProperty: The Analytics Property object associated with the 423 // specified 424 // `FirebaseProject`. 425 // <br> 426 // <br>This object contains the details of the Google Analytics 427 // property 428 // associated with the specified `FirebaseProject`. 429 AnalyticsProperty *AnalyticsProperty `json:"analyticsProperty,omitempty"` 430 431 // StreamMappings: For Android Apps and iOS Apps: A map of `app` to 432 // `streamId` for each 433 // Firebase App in the specified `FirebaseProject`. Each `app` 434 // and 435 // `streamId` appears only once.<br> 436 // <br> 437 // For Web Apps: A map of `app` to `streamId` and `measurementId` for 438 // each 439 // Firebase App in the specified `FirebaseProject`. Each `app`, 440 // `streamId`, 441 // and `measurementId` appears only once. 442 StreamMappings []*StreamMapping `json:"streamMappings,omitempty"` 443 444 // ServerResponse contains the HTTP response code and headers from the 445 // server. 446 googleapi.ServerResponse `json:"-"` 447 448 // ForceSendFields is a list of field names (e.g. "AnalyticsProperty") 449 // to unconditionally include in API requests. By default, fields with 450 // empty values are omitted from API requests. However, any non-pointer, 451 // non-interface field appearing in ForceSendFields will be sent to the 452 // server regardless of whether the field is empty or not. This may be 453 // used to include empty fields in Patch requests. 454 ForceSendFields []string `json:"-"` 455 456 // NullFields is a list of field names (e.g. "AnalyticsProperty") to 457 // include in API requests with the JSON null value. By default, fields 458 // with empty values are omitted from API requests. However, any field 459 // with an empty value appearing in NullFields will be sent to the 460 // server as null. It is an error if a field in this list has a 461 // non-empty value. This may be used to include null fields in Patch 462 // requests. 463 NullFields []string `json:"-"` 464} 465 466func (s *AnalyticsDetails) MarshalJSON() ([]byte, error) { 467 type NoMethod AnalyticsDetails 468 raw := NoMethod(*s) 469 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 470} 471 472// AnalyticsProperty: Details of a Google Analytics property 473type AnalyticsProperty struct { 474 // DisplayName: The display name of the Google Analytics property 475 // associated with the 476 // specified `FirebaseProject`. 477 DisplayName string `json:"displayName,omitempty"` 478 479 // Id: The globally unique, Google-assigned identifier of the Google 480 // Analytics 481 // property associated with the specified `FirebaseProject`. 482 // <br> 483 // <br>If you 484 // called 485 // [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytic 486 // s) to link 487 // your `FirebaseProject` with a Google Analytics account, the value in 488 // this 489 // `id` field is the same as the ID of the property either specified 490 // or 491 // provisioned with that call to `AddGoogleAnalytics`. 492 Id string `json:"id,omitempty"` 493 494 // ForceSendFields is a list of field names (e.g. "DisplayName") to 495 // unconditionally include in API requests. By default, fields with 496 // empty values are omitted from API requests. However, any non-pointer, 497 // non-interface field appearing in ForceSendFields will be sent to the 498 // server regardless of whether the field is empty or not. This may be 499 // used to include empty fields in Patch requests. 500 ForceSendFields []string `json:"-"` 501 502 // NullFields is a list of field names (e.g. "DisplayName") to include 503 // in API requests with the JSON null value. By default, fields with 504 // empty values are omitted from API requests. However, any field with 505 // an empty value appearing in NullFields will be sent to the server as 506 // null. It is an error if a field in this list has a non-empty value. 507 // This may be used to include null fields in Patch requests. 508 NullFields []string `json:"-"` 509} 510 511func (s *AnalyticsProperty) MarshalJSON() ([]byte, error) { 512 type NoMethod AnalyticsProperty 513 raw := NoMethod(*s) 514 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 515} 516 517// AndroidApp: Details of a Firebase App for Android. 518type AndroidApp struct { 519 // AppId: Immutable. The globally unique, Firebase-assigned identifier 520 // of the App. 521 // <br> 522 // <br>This identifier should be treated as an opaque token, as the 523 // data 524 // format is not specified. 525 AppId string `json:"appId,omitempty"` 526 527 // DisplayName: The user-assigned display name of the App. 528 DisplayName string `json:"displayName,omitempty"` 529 530 // Name: The fully qualified resource name of the App, in the 531 // format: 532 // <br><code>projects/<var>projectId</var>/androidApps/<var>appId 533 // </var></code> 534 Name string `json:"name,omitempty"` 535 536 // PackageName: The canonical package name of the Android App as would 537 // appear in the 538 // Google Play Developer Console. 539 PackageName string `json:"packageName,omitempty"` 540 541 // ProjectId: The globally unique, user-assigned ID of the parent 542 // Project for the App. 543 ProjectId string `json:"projectId,omitempty"` 544 545 // ServerResponse contains the HTTP response code and headers from the 546 // server. 547 googleapi.ServerResponse `json:"-"` 548 549 // ForceSendFields is a list of field names (e.g. "AppId") to 550 // unconditionally include in API requests. By default, fields with 551 // empty values are omitted from API requests. However, any non-pointer, 552 // non-interface field appearing in ForceSendFields will be sent to the 553 // server regardless of whether the field is empty or not. This may be 554 // used to include empty fields in Patch requests. 555 ForceSendFields []string `json:"-"` 556 557 // NullFields is a list of field names (e.g. "AppId") to include in API 558 // requests with the JSON null value. By default, fields with empty 559 // values are omitted from API requests. However, any field with an 560 // empty value appearing in NullFields will be sent to the server as 561 // null. It is an error if a field in this list has a non-empty value. 562 // This may be used to include null fields in Patch requests. 563 NullFields []string `json:"-"` 564} 565 566func (s *AndroidApp) MarshalJSON() ([]byte, error) { 567 type NoMethod AndroidApp 568 raw := NoMethod(*s) 569 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 570} 571 572// AndroidAppConfig: Configuration metadata of a single Firebase App for 573// Android. 574type AndroidAppConfig struct { 575 // ConfigFileContents: The contents of the JSON configuration file. 576 ConfigFileContents string `json:"configFileContents,omitempty"` 577 578 // ConfigFilename: The filename that the configuration artifact is 579 // typically saved as. 580 // <br>For example: `google-services.json` 581 ConfigFilename string `json:"configFilename,omitempty"` 582 583 // ServerResponse contains the HTTP response code and headers from the 584 // server. 585 googleapi.ServerResponse `json:"-"` 586 587 // ForceSendFields is a list of field names (e.g. "ConfigFileContents") 588 // to unconditionally include in API requests. By default, fields with 589 // empty values are omitted from API requests. However, any non-pointer, 590 // non-interface field appearing in ForceSendFields will be sent to the 591 // server regardless of whether the field is empty or not. This may be 592 // used to include empty fields in Patch requests. 593 ForceSendFields []string `json:"-"` 594 595 // NullFields is a list of field names (e.g. "ConfigFileContents") to 596 // include in API requests with the JSON null value. By default, fields 597 // with empty values are omitted from API requests. However, any field 598 // with an empty value appearing in NullFields will be sent to the 599 // server as null. It is an error if a field in this list has a 600 // non-empty value. This may be used to include null fields in Patch 601 // requests. 602 NullFields []string `json:"-"` 603} 604 605func (s *AndroidAppConfig) MarshalJSON() ([]byte, error) { 606 type NoMethod AndroidAppConfig 607 raw := NoMethod(*s) 608 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 609} 610 611// DefaultResources: The default resources associated with a 612// `FirebaseProject`. 613type DefaultResources struct { 614 // HostingSite: The default Firebase Hosting site name, in the 615 // format: 616 // <br><code><var>projectId</var></code> 617 // <br>Though rare, your `projectId` might already be used as the name 618 // for an 619 // existing Hosting site in another project (learn more about 620 // creating 621 // non-default, 622 // [additional 623 // sites](https://firebase.google.com/docs/hosting/multisites)). 624 // In these cases, your `projectId` is appended with a hyphen then 625 // five 626 // alphanumeric characters to create your default Hosting site name. 627 // For 628 // example, if your `projectId` is `myproject123`, your default Hosting 629 // site 630 // name might be: 631 // <br><code>myproject123-a5c16</code> 632 HostingSite string `json:"hostingSite,omitempty"` 633 634 // LocationId: The ID of the project's default GCP resource location. 635 // The location is one 636 // of the available 637 // [GCP 638 // resource 639 // locations](https://firebase.google.com/docs/projects/location 640 // s). <br> 641 // <br>This field is omitted if the default GCP resource location has 642 // not been 643 // finalized yet. To set your project's default GCP resource 644 // location, 645 // call 646 // [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize) 647 // afte 648 // r you add Firebase services to your project. 649 LocationId string `json:"locationId,omitempty"` 650 651 // RealtimeDatabaseInstance: The default Firebase Realtime Database 652 // instance name, in the 653 // format: 654 // <br><code><var>projectId</var></code> 655 // <br>Though rare, your `projectId` might already be used as the name 656 // for an 657 // existing Realtime Database instance in another project (learn more 658 // about 659 // [database 660 // sharding](https://firebase.google.com/docs/database/us 661 // age/sharding)). In 662 // these cases, your `projectId` is appended with a hyphen then 663 // five 664 // alphanumeric characters to create your default Realtime Database 665 // instance 666 // name. For example, if your `projectId` is `myproject123`, your 667 // default 668 // database instance name might be: 669 // <br><code>myproject123-a5c16</code> 670 RealtimeDatabaseInstance string `json:"realtimeDatabaseInstance,omitempty"` 671 672 // StorageBucket: The default Cloud Storage for Firebase storage bucket, 673 // in the format: 674 // <br><code><var>projectId</var>.appspot.com</code> 675 StorageBucket string `json:"storageBucket,omitempty"` 676 677 // ForceSendFields is a list of field names (e.g. "HostingSite") to 678 // unconditionally include in API requests. By default, fields with 679 // empty values are omitted from API requests. However, any non-pointer, 680 // non-interface field appearing in ForceSendFields will be sent to the 681 // server regardless of whether the field is empty or not. This may be 682 // used to include empty fields in Patch requests. 683 ForceSendFields []string `json:"-"` 684 685 // NullFields is a list of field names (e.g. "HostingSite") to include 686 // in API requests with the JSON null value. By default, fields with 687 // empty values are omitted from API requests. However, any field with 688 // an empty value appearing in NullFields will be sent to the server as 689 // null. It is an error if a field in this list has a non-empty value. 690 // This may be used to include null fields in Patch requests. 691 NullFields []string `json:"-"` 692} 693 694func (s *DefaultResources) MarshalJSON() ([]byte, error) { 695 type NoMethod DefaultResources 696 raw := NoMethod(*s) 697 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 698} 699 700// Empty: A generic empty message that you can re-use to avoid defining 701// duplicated 702// empty messages in your APIs. A typical example is to use it as the 703// request 704// or the response type of an API method. For instance: 705// 706// service Foo { 707// rpc Bar(google.protobuf.Empty) returns 708// (google.protobuf.Empty); 709// } 710// 711// The JSON representation for `Empty` is empty JSON object `{}`. 712type Empty struct { 713 // ServerResponse contains the HTTP response code and headers from the 714 // server. 715 googleapi.ServerResponse `json:"-"` 716} 717 718type FinalizeDefaultLocationRequest struct { 719 // LocationId: The ID of the default GCP resource location for the 720 // Project. The location 721 // must be one of the available 722 // [GCP 723 // resource 724 // locations](https://firebase.google.com/docs/projects/location 725 // s). 726 LocationId string `json:"locationId,omitempty"` 727 728 // ForceSendFields is a list of field names (e.g. "LocationId") to 729 // unconditionally include in API requests. By default, fields with 730 // empty values are omitted from API requests. However, any non-pointer, 731 // non-interface field appearing in ForceSendFields will be sent to the 732 // server regardless of whether the field is empty or not. This may be 733 // used to include empty fields in Patch requests. 734 ForceSendFields []string `json:"-"` 735 736 // NullFields is a list of field names (e.g. "LocationId") to include in 737 // API requests with the JSON null value. By default, fields with empty 738 // values are omitted from API requests. However, any field with an 739 // empty value appearing in NullFields will be sent to the server as 740 // null. It is an error if a field in this list has a non-empty value. 741 // This may be used to include null fields in Patch requests. 742 NullFields []string `json:"-"` 743} 744 745func (s *FinalizeDefaultLocationRequest) MarshalJSON() ([]byte, error) { 746 type NoMethod FinalizeDefaultLocationRequest 747 raw := NoMethod(*s) 748 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 749} 750 751// FirebaseAppInfo: A high-level summary of an App. 752type FirebaseAppInfo struct { 753 // AppId: Immutable. The globally unique, Firebase-assigned identifier 754 // of the App. 755 // <br> 756 // <br>This identifier should be treated as an opaque token, as the 757 // data 758 // format is not specified. 759 AppId string `json:"appId,omitempty"` 760 761 // DisplayName: The user-assigned display name of the Firebase App. 762 DisplayName string `json:"displayName,omitempty"` 763 764 // Name: The fully qualified resource name of the Firebase App, in the 765 // format: 766 // <br><code>projects/<var>projectId</var>/iosApps/<var>appId</va 767 // r></code> 768 // or 769 // <br><code>projects/<var>projectId</var>/androidApps/<var>appId</var> 770 // < 771 // /code> 772 Name string `json:"name,omitempty"` 773 774 // Platform: The platform of the Firebase App. 775 // 776 // Possible values: 777 // "PLATFORM_UNSPECIFIED" - Unknown state. This is only used for 778 // distinguishing unset values. 779 // "IOS" - The Firebase App is associated with iOS. 780 // "ANDROID" - The Firebase App is associated with Android. 781 // "WEB" - The Firebase App is associated with web. 782 Platform string `json:"platform,omitempty"` 783 784 // ForceSendFields is a list of field names (e.g. "AppId") to 785 // unconditionally include in API requests. By default, fields with 786 // empty values are omitted from API requests. However, any non-pointer, 787 // non-interface field appearing in ForceSendFields will be sent to the 788 // server regardless of whether the field is empty or not. This may be 789 // used to include empty fields in Patch requests. 790 ForceSendFields []string `json:"-"` 791 792 // NullFields is a list of field names (e.g. "AppId") to include in API 793 // requests with the JSON null value. By default, fields with empty 794 // values are omitted from API requests. However, any field with an 795 // empty value appearing in NullFields will be sent to the server as 796 // null. It is an error if a field in this list has a non-empty value. 797 // This may be used to include null fields in Patch requests. 798 NullFields []string `json:"-"` 799} 800 801func (s *FirebaseAppInfo) MarshalJSON() ([]byte, error) { 802 type NoMethod FirebaseAppInfo 803 raw := NoMethod(*s) 804 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 805} 806 807// FirebaseProject: A `FirebaseProject` is the top-level Firebase 808// entity. It is the container for 809// Firebase Apps, Firebase Hosting sites, storage systems (Firebase 810// Realtime 811// Database, Cloud Firestore, Cloud Storage buckets) and other Firebase 812// and 813// Google Cloud Platform (GCP) resources. 814// <br> 815// <br>You can create a new `FirebaseProject` in the 816// [Firebase console](https://console.firebase.google.com/), 817// or you can add Firebase resources to an 818// existing 819// [GCP 820// `Project`](https://cloud.google.com/resource-manager/ref 821// erence/rest/v1/projects) 822// by calling 823// AddFirebase. 824// <br> 825// <br>A `FirebaseProject` is actually also a GCP `Project`, so 826// a 827// `FirebaseProject` uses underlying GCP identifiers (most 828// importantly, 829// `projectId`) as its own for easy interop with GCP APIs. 830type FirebaseProject struct { 831 // DisplayName: The user-assigned display name of the Project. 832 DisplayName string `json:"displayName,omitempty"` 833 834 // Name: The fully qualified resource name of the Project, in the 835 // format: 836 // <br><code>projects/<var>projectId</var></code> 837 Name string `json:"name,omitempty"` 838 839 // ProjectId: Immutable. The globally unique, user-assigned ID of the 840 // Project. 841 ProjectId string `json:"projectId,omitempty"` 842 843 // ProjectNumber: The globally unique, Google-assigned identifier of the 844 // Project. 845 ProjectNumber int64 `json:"projectNumber,omitempty,string"` 846 847 // Resources: The default Firebase resources associated with the 848 // Project. 849 Resources *DefaultResources `json:"resources,omitempty"` 850 851 // ServerResponse contains the HTTP response code and headers from the 852 // server. 853 googleapi.ServerResponse `json:"-"` 854 855 // ForceSendFields is a list of field names (e.g. "DisplayName") to 856 // unconditionally include in API requests. By default, fields with 857 // empty values are omitted from API requests. However, any non-pointer, 858 // non-interface field appearing in ForceSendFields will be sent to the 859 // server regardless of whether the field is empty or not. This may be 860 // used to include empty fields in Patch requests. 861 ForceSendFields []string `json:"-"` 862 863 // NullFields is a list of field names (e.g. "DisplayName") to include 864 // in API requests with the JSON null value. By default, fields with 865 // empty values are omitted from API requests. However, any field with 866 // an empty value appearing in NullFields will be sent to the server as 867 // null. It is an error if a field in this list has a non-empty value. 868 // This may be used to include null fields in Patch requests. 869 NullFields []string `json:"-"` 870} 871 872func (s *FirebaseProject) MarshalJSON() ([]byte, error) { 873 type NoMethod FirebaseProject 874 raw := NoMethod(*s) 875 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 876} 877 878// IosApp: Details of a Firebase App for iOS. 879type IosApp struct { 880 // AppId: Immutable. The globally unique, Firebase-assigned identifier 881 // of the App. 882 // <br> 883 // <br>This identifier should be treated as an opaque token, as the 884 // data 885 // format is not specified. 886 AppId string `json:"appId,omitempty"` 887 888 // AppStoreId: The automatically generated Apple ID assigned to the App 889 // by Apple in the 890 // iOS App Store. 891 AppStoreId string `json:"appStoreId,omitempty"` 892 893 // BundleId: The canonical bundle ID of the iOS App as it would appear 894 // in the iOS 895 // AppStore. 896 BundleId string `json:"bundleId,omitempty"` 897 898 // DisplayName: The user-assigned display name of the App. 899 DisplayName string `json:"displayName,omitempty"` 900 901 // Name: The fully qualified resource name of the App, in the 902 // format: 903 // <br><code>projects/<var>projectId</var>/iosApps/<var>appId</va 904 // r></code> 905 Name string `json:"name,omitempty"` 906 907 // ProjectId: The globally unique, user-assigned ID of the parent 908 // Project for the App. 909 ProjectId string `json:"projectId,omitempty"` 910 911 // ServerResponse contains the HTTP response code and headers from the 912 // server. 913 googleapi.ServerResponse `json:"-"` 914 915 // ForceSendFields is a list of field names (e.g. "AppId") to 916 // unconditionally include in API requests. By default, fields with 917 // empty values are omitted from API requests. However, any non-pointer, 918 // non-interface field appearing in ForceSendFields will be sent to the 919 // server regardless of whether the field is empty or not. This may be 920 // used to include empty fields in Patch requests. 921 ForceSendFields []string `json:"-"` 922 923 // NullFields is a list of field names (e.g. "AppId") to include in API 924 // requests with the JSON null value. By default, fields with empty 925 // values are omitted from API requests. However, any field with an 926 // empty value appearing in NullFields will be sent to the server as 927 // null. It is an error if a field in this list has a non-empty value. 928 // This may be used to include null fields in Patch requests. 929 NullFields []string `json:"-"` 930} 931 932func (s *IosApp) MarshalJSON() ([]byte, error) { 933 type NoMethod IosApp 934 raw := NoMethod(*s) 935 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 936} 937 938// IosAppConfig: Configuration metadata of a single Firebase App for 939// iOS. 940type IosAppConfig struct { 941 // ConfigFileContents: The content of the XML configuration file. 942 ConfigFileContents string `json:"configFileContents,omitempty"` 943 944 // ConfigFilename: The filename that the configuration artifact is 945 // typically saved as. 946 // <br>For example: `GoogleService-Info.plist` 947 ConfigFilename string `json:"configFilename,omitempty"` 948 949 // ServerResponse contains the HTTP response code and headers from the 950 // server. 951 googleapi.ServerResponse `json:"-"` 952 953 // ForceSendFields is a list of field names (e.g. "ConfigFileContents") 954 // to unconditionally include in API requests. By default, fields with 955 // empty values are omitted from API requests. However, any non-pointer, 956 // non-interface field appearing in ForceSendFields will be sent to the 957 // server regardless of whether the field is empty or not. This may be 958 // used to include empty fields in Patch requests. 959 ForceSendFields []string `json:"-"` 960 961 // NullFields is a list of field names (e.g. "ConfigFileContents") to 962 // include in API requests with the JSON null value. By default, fields 963 // with empty values are omitted from API requests. However, any field 964 // with an empty value appearing in NullFields will be sent to the 965 // server as null. It is an error if a field in this list has a 966 // non-empty value. This may be used to include null fields in Patch 967 // requests. 968 NullFields []string `json:"-"` 969} 970 971func (s *IosAppConfig) MarshalJSON() ([]byte, error) { 972 type NoMethod IosAppConfig 973 raw := NoMethod(*s) 974 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 975} 976 977type ListAndroidAppsResponse struct { 978 // Apps: List of each AndroidApp that is in the parent Firebase Project. 979 Apps []*AndroidApp `json:"apps,omitempty"` 980 981 // NextPageToken: If the result list is too large to fit in a single 982 // response, then a token 983 // is returned. If the string is empty, then this response is the last 984 // page of 985 // results. 986 // <br> 987 // <br>This token can be used in a subsequent call to `ListAndroidApps` 988 // to 989 // find the next group of Apps. 990 // <br> 991 // <br>Page tokens are short-lived and should not be persisted. 992 NextPageToken string `json:"nextPageToken,omitempty"` 993 994 // ServerResponse contains the HTTP response code and headers from the 995 // server. 996 googleapi.ServerResponse `json:"-"` 997 998 // ForceSendFields is a list of field names (e.g. "Apps") to 999 // unconditionally include in API requests. By default, fields with 1000 // empty values are omitted from API requests. However, any non-pointer, 1001 // non-interface field appearing in ForceSendFields will be sent to the 1002 // server regardless of whether the field is empty or not. This may be 1003 // used to include empty fields in Patch requests. 1004 ForceSendFields []string `json:"-"` 1005 1006 // NullFields is a list of field names (e.g. "Apps") to include in API 1007 // requests with the JSON null value. By default, fields with empty 1008 // values are omitted from API requests. However, any field with an 1009 // empty value appearing in NullFields will be sent to the server as 1010 // null. It is an error if a field in this list has a non-empty value. 1011 // This may be used to include null fields in Patch requests. 1012 NullFields []string `json:"-"` 1013} 1014 1015func (s *ListAndroidAppsResponse) MarshalJSON() ([]byte, error) { 1016 type NoMethod ListAndroidAppsResponse 1017 raw := NoMethod(*s) 1018 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1019} 1020 1021type ListAvailableLocationsResponse struct { 1022 // Locations: One page of results from a call to 1023 // `ListAvailableLocations`. 1024 Locations []*Location `json:"locations,omitempty"` 1025 1026 // NextPageToken: If the result list is too large to fit in a single 1027 // response, then a token 1028 // is returned. If the string is empty, then this response is the last 1029 // page of 1030 // results and all available locations have been listed. 1031 // <br> 1032 // <br>This token can be used in a subsequent call 1033 // to 1034 // `ListAvailableLocations` to find more locations. 1035 // <br> 1036 // <br>Page tokens are short-lived and should not be persisted. 1037 NextPageToken string `json:"nextPageToken,omitempty"` 1038 1039 // ServerResponse contains the HTTP response code and headers from the 1040 // server. 1041 googleapi.ServerResponse `json:"-"` 1042 1043 // ForceSendFields is a list of field names (e.g. "Locations") to 1044 // unconditionally include in API requests. By default, fields with 1045 // empty values are omitted from API requests. However, any non-pointer, 1046 // non-interface field appearing in ForceSendFields will be sent to the 1047 // server regardless of whether the field is empty or not. This may be 1048 // used to include empty fields in Patch requests. 1049 ForceSendFields []string `json:"-"` 1050 1051 // NullFields is a list of field names (e.g. "Locations") to include in 1052 // API requests with the JSON null value. By default, fields with empty 1053 // values are omitted from API requests. However, any field with an 1054 // empty value appearing in NullFields will be sent to the server as 1055 // null. It is an error if a field in this list has a non-empty value. 1056 // This may be used to include null fields in Patch requests. 1057 NullFields []string `json:"-"` 1058} 1059 1060func (s *ListAvailableLocationsResponse) MarshalJSON() ([]byte, error) { 1061 type NoMethod ListAvailableLocationsResponse 1062 raw := NoMethod(*s) 1063 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1064} 1065 1066type ListAvailableProjectsResponse struct { 1067 // NextPageToken: If the result list is too large to fit in a single 1068 // response, then a token 1069 // is returned. If the string is empty, then this response is the last 1070 // page of 1071 // results. 1072 // <br> 1073 // <br>This token can be used in a subsequent calls to 1074 // `ListAvailableProjects` 1075 // to find the next group of GCP `Projects`. 1076 // <br> 1077 // <br>Page tokens are short-lived and should not be persisted. 1078 NextPageToken string `json:"nextPageToken,omitempty"` 1079 1080 // ProjectInfo: The list of GCP `Projects` which can have Firebase 1081 // resources added to them. 1082 ProjectInfo []*ProjectInfo `json:"projectInfo,omitempty"` 1083 1084 // ServerResponse contains the HTTP response code and headers from the 1085 // server. 1086 googleapi.ServerResponse `json:"-"` 1087 1088 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 1089 // unconditionally include in API requests. By default, fields with 1090 // empty values are omitted from API requests. However, any non-pointer, 1091 // non-interface field appearing in ForceSendFields will be sent to the 1092 // server regardless of whether the field is empty or not. This may be 1093 // used to include empty fields in Patch requests. 1094 ForceSendFields []string `json:"-"` 1095 1096 // NullFields is a list of field names (e.g. "NextPageToken") to include 1097 // in API requests with the JSON null value. By default, fields with 1098 // empty values are omitted from API requests. However, any field with 1099 // an empty value appearing in NullFields will be sent to the server as 1100 // null. It is an error if a field in this list has a non-empty value. 1101 // This may be used to include null fields in Patch requests. 1102 NullFields []string `json:"-"` 1103} 1104 1105func (s *ListAvailableProjectsResponse) MarshalJSON() ([]byte, error) { 1106 type NoMethod ListAvailableProjectsResponse 1107 raw := NoMethod(*s) 1108 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1109} 1110 1111type ListFirebaseProjectsResponse struct { 1112 // NextPageToken: If the result list is too large to fit in a single 1113 // response, then a token 1114 // is returned. If the string is empty, then this response is the last 1115 // page of 1116 // results. 1117 // <br> 1118 // <br>This token can be used in a subsequent calls to 1119 // `ListFirebaseProjects` 1120 // to find the next group of Projects. 1121 // <br> 1122 // <br>Page tokens are short-lived and should not be persisted. 1123 NextPageToken string `json:"nextPageToken,omitempty"` 1124 1125 // Results: One page of the list of Projects that are accessible to the 1126 // caller. 1127 Results []*FirebaseProject `json:"results,omitempty"` 1128 1129 // ServerResponse contains the HTTP response code and headers from the 1130 // server. 1131 googleapi.ServerResponse `json:"-"` 1132 1133 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 1134 // unconditionally include in API requests. By default, fields with 1135 // empty values are omitted from API requests. However, any non-pointer, 1136 // non-interface field appearing in ForceSendFields will be sent to the 1137 // server regardless of whether the field is empty or not. This may be 1138 // used to include empty fields in Patch requests. 1139 ForceSendFields []string `json:"-"` 1140 1141 // NullFields is a list of field names (e.g. "NextPageToken") to include 1142 // in API requests with the JSON null value. By default, fields with 1143 // empty values are omitted from API requests. However, any field with 1144 // an empty value appearing in NullFields will be sent to the server as 1145 // null. It is an error if a field in this list has a non-empty value. 1146 // This may be used to include null fields in Patch requests. 1147 NullFields []string `json:"-"` 1148} 1149 1150func (s *ListFirebaseProjectsResponse) MarshalJSON() ([]byte, error) { 1151 type NoMethod ListFirebaseProjectsResponse 1152 raw := NoMethod(*s) 1153 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1154} 1155 1156type ListIosAppsResponse struct { 1157 // Apps: List of each IosApp that is in the parent Firebase Project. 1158 Apps []*IosApp `json:"apps,omitempty"` 1159 1160 // NextPageToken: If the result list is too large to fit in a single 1161 // response, then a token 1162 // is returned. If the string is empty, then this response is the last 1163 // page of 1164 // results. 1165 // <br> 1166 // <br>This token can be used in a subsequent call to `ListIosApps` to 1167 // find 1168 // the next group of Apps. 1169 // <br> 1170 // <br>Page tokens are short-lived and should not be persisted. 1171 NextPageToken string `json:"nextPageToken,omitempty"` 1172 1173 // ServerResponse contains the HTTP response code and headers from the 1174 // server. 1175 googleapi.ServerResponse `json:"-"` 1176 1177 // ForceSendFields is a list of field names (e.g. "Apps") to 1178 // unconditionally include in API requests. By default, fields with 1179 // empty values are omitted from API requests. However, any non-pointer, 1180 // non-interface field appearing in ForceSendFields will be sent to the 1181 // server regardless of whether the field is empty or not. This may be 1182 // used to include empty fields in Patch requests. 1183 ForceSendFields []string `json:"-"` 1184 1185 // NullFields is a list of field names (e.g. "Apps") to include in API 1186 // requests with the JSON null value. By default, fields with empty 1187 // values are omitted from API requests. However, any field with an 1188 // empty value appearing in NullFields will be sent to the server as 1189 // null. It is an error if a field in this list has a non-empty value. 1190 // This may be used to include null fields in Patch requests. 1191 NullFields []string `json:"-"` 1192} 1193 1194func (s *ListIosAppsResponse) MarshalJSON() ([]byte, error) { 1195 type NoMethod ListIosAppsResponse 1196 raw := NoMethod(*s) 1197 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1198} 1199 1200type ListShaCertificatesResponse struct { 1201 // Certificates: The list of SHA certificates associated with the App. 1202 Certificates []*ShaCertificate `json:"certificates,omitempty"` 1203 1204 // ServerResponse contains the HTTP response code and headers from the 1205 // server. 1206 googleapi.ServerResponse `json:"-"` 1207 1208 // ForceSendFields is a list of field names (e.g. "Certificates") to 1209 // unconditionally include in API requests. By default, fields with 1210 // empty values are omitted from API requests. However, any non-pointer, 1211 // non-interface field appearing in ForceSendFields will be sent to the 1212 // server regardless of whether the field is empty or not. This may be 1213 // used to include empty fields in Patch requests. 1214 ForceSendFields []string `json:"-"` 1215 1216 // NullFields is a list of field names (e.g. "Certificates") to include 1217 // in API requests with the JSON null value. By default, fields with 1218 // empty values are omitted from API requests. However, any field with 1219 // an empty value appearing in NullFields will be sent to the server as 1220 // null. It is an error if a field in this list has a non-empty value. 1221 // This may be used to include null fields in Patch requests. 1222 NullFields []string `json:"-"` 1223} 1224 1225func (s *ListShaCertificatesResponse) MarshalJSON() ([]byte, error) { 1226 type NoMethod ListShaCertificatesResponse 1227 raw := NoMethod(*s) 1228 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1229} 1230 1231type ListWebAppsResponse struct { 1232 // Apps: List of each WebApp that is in the parent Firebase Project. 1233 Apps []*WebApp `json:"apps,omitempty"` 1234 1235 // NextPageToken: If the result list is too large to fit in a single 1236 // response, then a token 1237 // is returned. If the string is empty, then this response is the last 1238 // page of 1239 // results. 1240 // <br> 1241 // <br>This token can be used in a subsequent call to `ListWebApps` to 1242 // find 1243 // the next group of Apps. 1244 // <br> 1245 // <br>Page tokens are short-lived and should not be persisted. 1246 NextPageToken string `json:"nextPageToken,omitempty"` 1247 1248 // ServerResponse contains the HTTP response code and headers from the 1249 // server. 1250 googleapi.ServerResponse `json:"-"` 1251 1252 // ForceSendFields is a list of field names (e.g. "Apps") to 1253 // unconditionally include in API requests. By default, fields with 1254 // empty values are omitted from API requests. However, any non-pointer, 1255 // non-interface field appearing in ForceSendFields will be sent to the 1256 // server regardless of whether the field is empty or not. This may be 1257 // used to include empty fields in Patch requests. 1258 ForceSendFields []string `json:"-"` 1259 1260 // NullFields is a list of field names (e.g. "Apps") to include in API 1261 // requests with the JSON null value. By default, fields with empty 1262 // values are omitted from API requests. However, any field with an 1263 // empty value appearing in NullFields will be sent to the server as 1264 // null. It is an error if a field in this list has a non-empty value. 1265 // This may be used to include null fields in Patch requests. 1266 NullFields []string `json:"-"` 1267} 1268 1269func (s *ListWebAppsResponse) MarshalJSON() ([]byte, error) { 1270 type NoMethod ListWebAppsResponse 1271 raw := NoMethod(*s) 1272 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1273} 1274 1275// Location: A GCP resource location that can be selected for a Project. 1276type Location struct { 1277 // LocationId: The ID of the default GCP resource location. It must be 1278 // one of the 1279 // available 1280 // [GCP 1281 // resource 1282 // locations](https://firebase.google.com/docs/projects/location 1283 // s). 1284 LocationId string `json:"locationId,omitempty"` 1285 1286 // ForceSendFields is a list of field names (e.g. "LocationId") to 1287 // unconditionally include in API requests. By default, fields with 1288 // empty values are omitted from API requests. However, any non-pointer, 1289 // non-interface field appearing in ForceSendFields will be sent to the 1290 // server regardless of whether the field is empty or not. This may be 1291 // used to include empty fields in Patch requests. 1292 ForceSendFields []string `json:"-"` 1293 1294 // NullFields is a list of field names (e.g. "LocationId") to include in 1295 // API requests with the JSON null value. By default, fields with empty 1296 // values are omitted from API requests. However, any field with an 1297 // empty value appearing in NullFields will be sent to the server as 1298 // null. It is an error if a field in this list has a non-empty value. 1299 // This may be used to include null fields in Patch requests. 1300 NullFields []string `json:"-"` 1301} 1302 1303func (s *Location) MarshalJSON() ([]byte, error) { 1304 type NoMethod Location 1305 raw := NoMethod(*s) 1306 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1307} 1308 1309// MessageSet: This is proto2's version of MessageSet. 1310type MessageSet struct { 1311} 1312 1313// Operation: This resource represents a long-running operation that is 1314// the result of a 1315// network API call. 1316type Operation struct { 1317 // Done: If the value is `false`, it means the operation is still in 1318 // progress. 1319 // If `true`, the operation is completed, and either `error` or 1320 // `response` is 1321 // available. 1322 Done bool `json:"done,omitempty"` 1323 1324 // Error: The error result of the operation in case of failure or 1325 // cancellation. 1326 Error *Status `json:"error,omitempty"` 1327 1328 // Metadata: Service-specific metadata associated with the operation. 1329 // It typically 1330 // contains progress information and common metadata such as create 1331 // time. 1332 // Some services might not provide such metadata. Any method that 1333 // returns a 1334 // long-running operation should document the metadata type, if any. 1335 Metadata googleapi.RawMessage `json:"metadata,omitempty"` 1336 1337 // Name: The server-assigned name, which is only unique within the same 1338 // service that 1339 // originally returns it. If you use the default HTTP mapping, 1340 // the 1341 // `name` should be a resource name ending with 1342 // `operations/{unique_id}`. 1343 Name string `json:"name,omitempty"` 1344 1345 // Response: The normal response of the operation in case of success. 1346 // If the original 1347 // method returns no data on success, such as `Delete`, the response 1348 // is 1349 // `google.protobuf.Empty`. If the original method is 1350 // standard 1351 // `Get`/`Create`/`Update`, the response should be the resource. For 1352 // other 1353 // methods, the response should have the type `XxxResponse`, where 1354 // `Xxx` 1355 // is the original method name. For example, if the original method 1356 // name 1357 // is `TakeSnapshot()`, the inferred response type 1358 // is 1359 // `TakeSnapshotResponse`. 1360 Response googleapi.RawMessage `json:"response,omitempty"` 1361 1362 // ServerResponse contains the HTTP response code and headers from the 1363 // server. 1364 googleapi.ServerResponse `json:"-"` 1365 1366 // ForceSendFields is a list of field names (e.g. "Done") to 1367 // unconditionally include in API requests. By default, fields with 1368 // empty values are omitted from API requests. However, any non-pointer, 1369 // non-interface field appearing in ForceSendFields will be sent to the 1370 // server regardless of whether the field is empty or not. This may be 1371 // used to include empty fields in Patch requests. 1372 ForceSendFields []string `json:"-"` 1373 1374 // NullFields is a list of field names (e.g. "Done") to include in API 1375 // requests with the JSON null value. By default, fields with empty 1376 // values are omitted from API requests. However, any field with an 1377 // empty value appearing in NullFields will be sent to the server as 1378 // null. It is an error if a field in this list has a non-empty value. 1379 // This may be used to include null fields in Patch requests. 1380 NullFields []string `json:"-"` 1381} 1382 1383func (s *Operation) MarshalJSON() ([]byte, error) { 1384 type NoMethod Operation 1385 raw := NoMethod(*s) 1386 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1387} 1388 1389// ProjectInfo: A reference to a Google Cloud Platform (GCP) `Project`. 1390type ProjectInfo struct { 1391 // DisplayName: The user-assigned display name of the GCP `Project`, for 1392 // example: 1393 // <code>My App</code> 1394 DisplayName string `json:"displayName,omitempty"` 1395 1396 // LocationId: The ID of the project's default GCP resource location. 1397 // The location is one 1398 // of the available 1399 // [GCP 1400 // resource 1401 // locations](https://firebase.google.com/docs/projects/location 1402 // s). <br> <br> 1403 // Not all projects will have this field populated. If it is not 1404 // populated, it 1405 // means that the project does not yet have a default GCP resource 1406 // location. 1407 // To set your project's default GCP resource location, 1408 // call 1409 // [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize) 1410 // after you 1411 // add Firebase resources to your project. 1412 LocationId string `json:"locationId,omitempty"` 1413 1414 // Project: The resource name of the GCP `Project` to which Firebase 1415 // resources can be 1416 // added, in the format: 1417 // <br><code>projects/<var>projectId</var></code> 1418 Project string `json:"project,omitempty"` 1419 1420 // ForceSendFields is a list of field names (e.g. "DisplayName") to 1421 // unconditionally include in API requests. By default, fields with 1422 // empty values are omitted from API requests. However, any non-pointer, 1423 // non-interface field appearing in ForceSendFields will be sent to the 1424 // server regardless of whether the field is empty or not. This may be 1425 // used to include empty fields in Patch requests. 1426 ForceSendFields []string `json:"-"` 1427 1428 // NullFields is a list of field names (e.g. "DisplayName") to include 1429 // in API requests with the JSON null value. By default, fields with 1430 // empty values are omitted from API requests. However, any field with 1431 // an empty value appearing in NullFields will be sent to the server as 1432 // null. It is an error if a field in this list has a non-empty value. 1433 // This may be used to include null fields in Patch requests. 1434 NullFields []string `json:"-"` 1435} 1436 1437func (s *ProjectInfo) MarshalJSON() ([]byte, error) { 1438 type NoMethod ProjectInfo 1439 raw := NoMethod(*s) 1440 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1441} 1442 1443type RemoveAnalyticsRequest struct { 1444 // AnalyticsPropertyId: Optional. The ID of the Google Analytics 1445 // property associated with the 1446 // specified `FirebaseProject`. 1447 // <ul> 1448 // <li>If not set, then the Google Analytics property that is 1449 // currently 1450 // associated with the specified `FirebaseProject` is 1451 // removed.</li> 1452 // <li>If set, and the specified `FirebaseProject` is currently 1453 // associated 1454 // with a <em>different</em> Google Analytics property, then the 1455 // response is a 1456 // `412 Precondition Failed` error.</li> 1457 // </ul> 1458 AnalyticsPropertyId string `json:"analyticsPropertyId,omitempty"` 1459 1460 // ForceSendFields is a list of field names (e.g. "AnalyticsPropertyId") 1461 // to unconditionally include in API requests. By default, fields with 1462 // empty values are omitted from API requests. However, any non-pointer, 1463 // non-interface field appearing in ForceSendFields will be sent to the 1464 // server regardless of whether the field is empty or not. This may be 1465 // used to include empty fields in Patch requests. 1466 ForceSendFields []string `json:"-"` 1467 1468 // NullFields is a list of field names (e.g. "AnalyticsPropertyId") to 1469 // include in API requests with the JSON null value. By default, fields 1470 // with empty values are omitted from API requests. However, any field 1471 // with an empty value appearing in NullFields will be sent to the 1472 // server as null. It is an error if a field in this list has a 1473 // non-empty value. This may be used to include null fields in Patch 1474 // requests. 1475 NullFields []string `json:"-"` 1476} 1477 1478func (s *RemoveAnalyticsRequest) MarshalJSON() ([]byte, error) { 1479 type NoMethod RemoveAnalyticsRequest 1480 raw := NoMethod(*s) 1481 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1482} 1483 1484type SearchFirebaseAppsResponse struct { 1485 // Apps: One page of results from a call to `SearchFirebaseApps`. 1486 Apps []*FirebaseAppInfo `json:"apps,omitempty"` 1487 1488 // NextPageToken: If the result list is too large to fit in a single 1489 // response, then a token 1490 // is returned. 1491 // <br> 1492 // <br>This token can be used in a subsequent calls to 1493 // `SearchFirebaseApps` 1494 // to find the next group of Apps. 1495 // <br>If the string is empty, then this response is the last page of 1496 // results. 1497 // <br>Page tokens are short-lived and should not be persisted. 1498 NextPageToken string `json:"nextPageToken,omitempty"` 1499 1500 // ServerResponse contains the HTTP response code and headers from the 1501 // server. 1502 googleapi.ServerResponse `json:"-"` 1503 1504 // ForceSendFields is a list of field names (e.g. "Apps") to 1505 // unconditionally include in API requests. By default, fields with 1506 // empty values are omitted from API requests. However, any non-pointer, 1507 // non-interface field appearing in ForceSendFields will be sent to the 1508 // server regardless of whether the field is empty or not. This may be 1509 // used to include empty fields in Patch requests. 1510 ForceSendFields []string `json:"-"` 1511 1512 // NullFields is a list of field names (e.g. "Apps") to include in API 1513 // requests with the JSON null value. By default, fields with empty 1514 // values are omitted from API requests. However, any field with an 1515 // empty value appearing in NullFields will be sent to the server as 1516 // null. It is an error if a field in this list has a non-empty value. 1517 // This may be used to include null fields in Patch requests. 1518 NullFields []string `json:"-"` 1519} 1520 1521func (s *SearchFirebaseAppsResponse) MarshalJSON() ([]byte, error) { 1522 type NoMethod SearchFirebaseAppsResponse 1523 raw := NoMethod(*s) 1524 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1525} 1526 1527// ShaCertificate: A SHA-1 or SHA-256 certificate associated with the 1528// AndroidApp. 1529type ShaCertificate struct { 1530 // CertType: The SHA certificate type. 1531 // 1532 // Possible values: 1533 // "SHA_CERTIFICATE_TYPE_UNSPECIFIED" - Unknown state. This is only 1534 // used for distinguishing unset values. 1535 // "SHA_1" - Certificate is a SHA-1 type certificate. 1536 // "SHA_256" - Certificate is a SHA-256 type certificate. 1537 CertType string `json:"certType,omitempty"` 1538 1539 // Name: The fully qualified resource name of the `sha-key`, in the 1540 // format: 1541 // <br><code>projects/<var>projectId</var>/androidApps/<var>appId 1542 // </var>/sha/<var>shaId</var></code> 1543 Name string `json:"name,omitempty"` 1544 1545 // ShaHash: The certificate hash for the App. 1546 ShaHash string `json:"shaHash,omitempty"` 1547 1548 // ServerResponse contains the HTTP response code and headers from the 1549 // server. 1550 googleapi.ServerResponse `json:"-"` 1551 1552 // ForceSendFields is a list of field names (e.g. "CertType") to 1553 // unconditionally include in API requests. By default, fields with 1554 // empty values are omitted from API requests. However, any non-pointer, 1555 // non-interface field appearing in ForceSendFields will be sent to the 1556 // server regardless of whether the field is empty or not. This may be 1557 // used to include empty fields in Patch requests. 1558 ForceSendFields []string `json:"-"` 1559 1560 // NullFields is a list of field names (e.g. "CertType") to include in 1561 // API requests with the JSON null value. By default, fields with empty 1562 // values are omitted from API requests. However, any field with an 1563 // empty value appearing in NullFields will be sent to the server as 1564 // null. It is an error if a field in this list has a non-empty value. 1565 // This may be used to include null fields in Patch requests. 1566 NullFields []string `json:"-"` 1567} 1568 1569func (s *ShaCertificate) MarshalJSON() ([]byte, error) { 1570 type NoMethod ShaCertificate 1571 raw := NoMethod(*s) 1572 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1573} 1574 1575// Status: The `Status` type defines a logical error model that is 1576// suitable for 1577// different programming environments, including REST APIs and RPC APIs. 1578// It is 1579// used by [gRPC](https://github.com/grpc). Each `Status` message 1580// contains 1581// three pieces of data: error code, error message, and error 1582// details. 1583// 1584// You can find out more about this error model and how to work with it 1585// in the 1586// [API Design Guide](https://cloud.google.com/apis/design/errors). 1587type Status struct { 1588 // Code: The status code, which should be an enum value of 1589 // google.rpc.Code. 1590 Code int64 `json:"code,omitempty"` 1591 1592 // Details: A list of messages that carry the error details. There is a 1593 // common set of 1594 // message types for APIs to use. 1595 Details []googleapi.RawMessage `json:"details,omitempty"` 1596 1597 // Message: A developer-facing error message, which should be in 1598 // English. Any 1599 // user-facing error message should be localized and sent in 1600 // the 1601 // google.rpc.Status.details field, or localized by the client. 1602 Message string `json:"message,omitempty"` 1603 1604 // ForceSendFields is a list of field names (e.g. "Code") to 1605 // unconditionally include in API requests. By default, fields with 1606 // empty values are omitted from API requests. However, any non-pointer, 1607 // non-interface field appearing in ForceSendFields will be sent to the 1608 // server regardless of whether the field is empty or not. This may be 1609 // used to include empty fields in Patch requests. 1610 ForceSendFields []string `json:"-"` 1611 1612 // NullFields is a list of field names (e.g. "Code") to include in API 1613 // requests with the JSON null value. By default, fields with empty 1614 // values are omitted from API requests. However, any field with an 1615 // empty value appearing in NullFields will be sent to the server as 1616 // null. It is an error if a field in this list has a non-empty value. 1617 // This may be used to include null fields in Patch requests. 1618 NullFields []string `json:"-"` 1619} 1620 1621func (s *Status) MarshalJSON() ([]byte, error) { 1622 type NoMethod Status 1623 raw := NoMethod(*s) 1624 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1625} 1626 1627// StatusProto: Wire-format for a Status object 1628type StatusProto struct { 1629 // CanonicalCode: The canonical error code (see codes.proto) that most 1630 // closely 1631 // corresponds to this status. May be missing. 1632 CanonicalCode int64 `json:"canonicalCode,omitempty"` 1633 1634 // Code: Numeric code drawn from the space specified below. Often, this 1635 // is the 1636 // canonical error space, and code is drawn from 1637 // google3/util/task/codes.proto 1638 Code int64 `json:"code,omitempty"` 1639 1640 // Message: Detail message 1641 Message string `json:"message,omitempty"` 1642 1643 // MessageSet: message_set associates an arbitrary proto message with 1644 // the status. 1645 MessageSet *MessageSet `json:"messageSet,omitempty"` 1646 1647 // Payload: DEPRECATED. 1648 // 1649 // This field was deprecated in 2011 with cl/20297133. Java support 1650 // for the field was moved to a proto1 backward compatibility class 1651 // in April 2017 with cl/142615857 and cl/154123203. There was 1652 // never support for this field in Go; if set Go will ignore it. 1653 // C++ stopped setting StatusProto::payload in October 2015 with 1654 // cl/106347055, 1655 // and stopped reading the field in October 2017 with cl/173324114. 1656 // 1657 // In general, newly written code should use only "message_set". If you 1658 // need 1659 // to maintain backward compatibility with code written before 1660 // 3/25/2011, do 1661 // the following: 1662 // 1663 // - During the transition period, either (1) set both "payload" and 1664 // "message_set", or (2) write the consumer of StatusProto so that it 1665 // can 1666 // forge a MessageSet object from "payload" if "message_set" is 1667 // missing. 1668 // The C++ util::Status implementation does (2). 1669 // 1670 // - Once all the consumers are converted to accept "message_set", then 1671 // remove the use of "payload" on the producer side. 1672 Payload *TypedMessage `json:"payload,omitempty"` 1673 1674 // Space: The following are usually only present when code != 0 1675 // Space to which this status belongs 1676 Space string `json:"space,omitempty"` 1677 1678 // ForceSendFields is a list of field names (e.g. "CanonicalCode") to 1679 // unconditionally include in API requests. By default, fields with 1680 // empty values are omitted from API requests. However, any non-pointer, 1681 // non-interface field appearing in ForceSendFields will be sent to the 1682 // server regardless of whether the field is empty or not. This may be 1683 // used to include empty fields in Patch requests. 1684 ForceSendFields []string `json:"-"` 1685 1686 // NullFields is a list of field names (e.g. "CanonicalCode") to include 1687 // in API requests with the JSON null value. By default, fields with 1688 // empty values are omitted from API requests. However, any field with 1689 // an empty value appearing in NullFields will be sent to the server as 1690 // null. It is an error if a field in this list has a non-empty value. 1691 // This may be used to include null fields in Patch requests. 1692 NullFields []string `json:"-"` 1693} 1694 1695func (s *StatusProto) MarshalJSON() ([]byte, error) { 1696 type NoMethod StatusProto 1697 raw := NoMethod(*s) 1698 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1699} 1700 1701// StreamMapping: A mapping of a Firebase App to a Google Analytics data 1702// stream 1703type StreamMapping struct { 1704 // App: The fully qualified resource name of the Firebase App associated 1705 // with the 1706 // Google Analytics data stream, in the 1707 // format: 1708 // <br><code>projects/<var>projectId</var>/androidApps/<var>appId 1709 // </var></code> 1710 // or 1711 // <code>projects/<var>projectId</var>/iosApps/<var>appI 1712 // d</var></code> 1713 // or 1714 // <code>projects/<var>projectId</var>/webApps/<var>app 1715 // Id</var></code> 1716 App string `json:"app,omitempty"` 1717 1718 // MeasurementId: Applicable for Firebase Web Apps only.<br> 1719 // <br>The unique Google-assigned identifier of the Google Analytics 1720 // web 1721 // stream associated with the Firebase Web App. Firebase SDKs use this 1722 // ID to 1723 // interact with Google Analytics APIs. 1724 // <br> 1725 // <br>Learn more about this ID and Google Analytics web streams in 1726 // the 1727 // [Analytics 1728 // documentation](https://support.google.com/analytics/top 1729 // ic/9303475). 1730 MeasurementId string `json:"measurementId,omitempty"` 1731 1732 // StreamId: The unique Google-assigned identifier of the Google 1733 // Analytics data stream 1734 // associated with the Firebase App. 1735 // <br> 1736 // <br>Learn more about Google Analytics data streams in 1737 // the 1738 // [Analytics 1739 // documentation](https://support.google.com/analytics/ans 1740 // wer/9303323). 1741 StreamId int64 `json:"streamId,omitempty,string"` 1742 1743 // ForceSendFields is a list of field names (e.g. "App") to 1744 // unconditionally include in API requests. By default, fields with 1745 // empty values are omitted from API requests. However, any non-pointer, 1746 // non-interface field appearing in ForceSendFields will be sent to the 1747 // server regardless of whether the field is empty or not. This may be 1748 // used to include empty fields in Patch requests. 1749 ForceSendFields []string `json:"-"` 1750 1751 // NullFields is a list of field names (e.g. "App") to include in API 1752 // requests with the JSON null value. By default, fields with empty 1753 // values are omitted from API requests. However, any field with an 1754 // empty value appearing in NullFields will be sent to the server as 1755 // null. It is an error if a field in this list has a non-empty value. 1756 // This may be used to include null fields in Patch requests. 1757 NullFields []string `json:"-"` 1758} 1759 1760func (s *StreamMapping) MarshalJSON() ([]byte, error) { 1761 type NoMethod StreamMapping 1762 raw := NoMethod(*s) 1763 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1764} 1765 1766// TypedMessage: Message that groups a protocol type_id (as defined by 1767// MessageSet), 1768// with an encoded message of that type. Its use is similar 1769// to 1770// MessageSet, except it represents a single (type, encoded 1771// message) 1772// instead of a set. 1773// 1774// To fill for known protocol type: 1775// MyProtocolMsg proto; 1776// TypedMessage typed_msg; 1777// typed_msg.set_type_id(MyProtocolMsg::MESSAGE_TYPE_ID); 1778// proto.AppendToCord(typed_msg.mutable_message()); 1779// 1780// To fill for unknown protocol type: 1781// ProtocolMessage proto; 1782// TypedMessage typed_msg; 1783// typed_msg.set_type_id(proto.GetMapper()->type_id()); 1784// proto.AppendToCord(typed_msg.mutable_message()); 1785type TypedMessage struct { 1786 // Message: Message bytes. 1787 Message string `json:"message,omitempty"` 1788 1789 // TypeId: Identifier for the type. 1790 TypeId int64 `json:"typeId,omitempty"` 1791 1792 // ForceSendFields is a list of field names (e.g. "Message") to 1793 // unconditionally include in API requests. By default, fields with 1794 // empty values are omitted from API requests. However, any non-pointer, 1795 // non-interface field appearing in ForceSendFields will be sent to the 1796 // server regardless of whether the field is empty or not. This may be 1797 // used to include empty fields in Patch requests. 1798 ForceSendFields []string `json:"-"` 1799 1800 // NullFields is a list of field names (e.g. "Message") to include in 1801 // API requests with the JSON null value. By default, fields with empty 1802 // values are omitted from API requests. However, any field with an 1803 // empty value appearing in NullFields will be sent to the server as 1804 // null. It is an error if a field in this list has a non-empty value. 1805 // This may be used to include null fields in Patch requests. 1806 NullFields []string `json:"-"` 1807} 1808 1809func (s *TypedMessage) MarshalJSON() ([]byte, error) { 1810 type NoMethod TypedMessage 1811 raw := NoMethod(*s) 1812 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1813} 1814 1815// WebApp: Details of a Firebase App for the web. 1816type WebApp struct { 1817 // AppId: Immutable. The globally unique, Firebase-assigned identifier 1818 // of the App. 1819 // <br> 1820 // <br>This identifier should be treated as an opaque token, as the 1821 // data 1822 // format is not specified. 1823 AppId string `json:"appId,omitempty"` 1824 1825 // AppUrls: The fully qualified URLs where the App is hosted. 1826 AppUrls []string `json:"appUrls,omitempty"` 1827 1828 // DisplayName: The user-assigned display name of the App. 1829 DisplayName string `json:"displayName,omitempty"` 1830 1831 // Name: The fully qualified resource name of the App, for 1832 // example: 1833 // <br><code>projects/<var>projectId</var>/webApps/<var>appId</v 1834 // ar></code> 1835 Name string `json:"name,omitempty"` 1836 1837 // ProjectId: The globally unique, user-assigned ID of the parent 1838 // Project for the App. 1839 ProjectId string `json:"projectId,omitempty"` 1840 1841 // ServerResponse contains the HTTP response code and headers from the 1842 // server. 1843 googleapi.ServerResponse `json:"-"` 1844 1845 // ForceSendFields is a list of field names (e.g. "AppId") to 1846 // unconditionally include in API requests. By default, fields with 1847 // empty values are omitted from API requests. However, any non-pointer, 1848 // non-interface field appearing in ForceSendFields will be sent to the 1849 // server regardless of whether the field is empty or not. This may be 1850 // used to include empty fields in Patch requests. 1851 ForceSendFields []string `json:"-"` 1852 1853 // NullFields is a list of field names (e.g. "AppId") to include in API 1854 // requests with the JSON null value. By default, fields with empty 1855 // values are omitted from API requests. However, any field with an 1856 // empty value appearing in NullFields will be sent to the server as 1857 // null. It is an error if a field in this list has a non-empty value. 1858 // This may be used to include null fields in Patch requests. 1859 NullFields []string `json:"-"` 1860} 1861 1862func (s *WebApp) MarshalJSON() ([]byte, error) { 1863 type NoMethod WebApp 1864 raw := NoMethod(*s) 1865 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1866} 1867 1868// WebAppConfig: Configuration metadata of a single Firebase App for the 1869// web. 1870type WebAppConfig struct { 1871 // ApiKey: The API key associated with the web App. 1872 ApiKey string `json:"apiKey,omitempty"` 1873 1874 // AppId: Immutable. The globally unique, Firebase-assigned identifier 1875 // of the App. 1876 AppId string `json:"appId,omitempty"` 1877 1878 // AuthDomain: The domain Firebase Auth configures for OAuth redirects, 1879 // in the format: 1880 // <br><code><var>projectId</var>.firebaseapp.com</code> 1881 AuthDomain string `json:"authDomain,omitempty"` 1882 1883 // DatabaseURL: The default Firebase Realtime Database URL. 1884 DatabaseURL string `json:"databaseURL,omitempty"` 1885 1886 // LocationId: The ID of the project's default GCP resource location. 1887 // The location is one 1888 // of the available 1889 // [GCP 1890 // resource 1891 // locations](https://firebase.google.com/docs/projects/location 1892 // s). <br> 1893 // <br>This field is omitted if the default GCP resource location has 1894 // not been 1895 // finalized yet. To set your project's default GCP resource 1896 // location, 1897 // call 1898 // [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize) 1899 // afte 1900 // r you add Firebase services to your project. 1901 LocationId string `json:"locationId,omitempty"` 1902 1903 // MeasurementId: The unique Google-assigned identifier of the Google 1904 // Analytics web stream 1905 // associated with the Firebase Web App. Firebase SDKs use this ID to 1906 // interact 1907 // with Google Analytics APIs. 1908 // <br> 1909 // <br>This field is only present if the App is linked to a web stream 1910 // in a 1911 // Google Analytics App + Web property. Learn more about this ID and 1912 // Google 1913 // Analytics web streams in the 1914 // [Analytics 1915 // documentation](https://support.google.com/analytics/topic/9 1916 // 303475). 1917 // <br> 1918 // <br>To generate a `measurementId` and link the Web App with a 1919 // Google 1920 // Analytics web stream, 1921 // call 1922 // [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytics) 1923 // . 1924 MeasurementId string `json:"measurementId,omitempty"` 1925 1926 // MessagingSenderId: The sender ID for use with Firebase Cloud 1927 // Messaging. 1928 MessagingSenderId string `json:"messagingSenderId,omitempty"` 1929 1930 // ProjectId: Immutable. The globally unique, user-assigned project ID 1931 // of the parent 1932 // Project for the App. 1933 ProjectId string `json:"projectId,omitempty"` 1934 1935 // StorageBucket: The default Cloud Storage for Firebase storage bucket 1936 // name. 1937 StorageBucket string `json:"storageBucket,omitempty"` 1938 1939 // ServerResponse contains the HTTP response code and headers from the 1940 // server. 1941 googleapi.ServerResponse `json:"-"` 1942 1943 // ForceSendFields is a list of field names (e.g. "ApiKey") to 1944 // unconditionally include in API requests. By default, fields with 1945 // empty values are omitted from API requests. However, any non-pointer, 1946 // non-interface field appearing in ForceSendFields will be sent to the 1947 // server regardless of whether the field is empty or not. This may be 1948 // used to include empty fields in Patch requests. 1949 ForceSendFields []string `json:"-"` 1950 1951 // NullFields is a list of field names (e.g. "ApiKey") to include in API 1952 // requests with the JSON null value. By default, fields with empty 1953 // values are omitted from API requests. However, any field with an 1954 // empty value appearing in NullFields will be sent to the server as 1955 // null. It is an error if a field in this list has a non-empty value. 1956 // This may be used to include null fields in Patch requests. 1957 NullFields []string `json:"-"` 1958} 1959 1960func (s *WebAppConfig) MarshalJSON() ([]byte, error) { 1961 type NoMethod WebAppConfig 1962 raw := NoMethod(*s) 1963 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1964} 1965 1966// method id "firebase.availableProjects.list": 1967 1968type AvailableProjectsListCall struct { 1969 s *Service 1970 urlParams_ gensupport.URLParams 1971 ifNoneMatch_ string 1972 ctx_ context.Context 1973 header_ http.Header 1974} 1975 1976// List: Returns a list of [Google Cloud Platform (GCP) 1977// `Projects`] 1978// (https://cloud.google.com/resource-manager/reference/rest/ 1979// v1/projects) 1980// that are available to have Firebase resources added to 1981// them. 1982// <br> 1983// <br>A GCP `Project` will only be returned if: 1984// <ol> 1985// <li><p>The caller has sufficient 1986// [Google IAM](https://cloud.google.com/iam) permissions to 1987// call 1988// AddFirebase.</p></li> 1989// <li><p>The GCP `Project` is not already a 1990// FirebaseProject.</p></li> 1991// <li><p>The GCP `Project` is not in an Organization which has 1992// policies 1993// that prevent Firebase resources from being 1994// added.</p></li> 1995// </ol> 1996func (r *AvailableProjectsService) List() *AvailableProjectsListCall { 1997 c := &AvailableProjectsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 1998 return c 1999} 2000 2001// PageSize sets the optional parameter "pageSize": The maximum number 2002// of GCP `Projects` to return in the response. 2003// <br> 2004// <br>The server may return fewer than this value at its discretion. 2005// If no value is specified (or too large a value is specified), the 2006// server 2007// will impose its own limit. 2008// <br> 2009// <br>This value cannot be negative. 2010func (c *AvailableProjectsListCall) PageSize(pageSize int64) *AvailableProjectsListCall { 2011 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 2012 return c 2013} 2014 2015// PageToken sets the optional parameter "pageToken": Token returned 2016// from a previous call to `ListAvailableProjects` 2017// indicating where in the set of GCP `Projects` to resume listing. 2018func (c *AvailableProjectsListCall) PageToken(pageToken string) *AvailableProjectsListCall { 2019 c.urlParams_.Set("pageToken", pageToken) 2020 return c 2021} 2022 2023// Fields allows partial responses to be retrieved. See 2024// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2025// for more information. 2026func (c *AvailableProjectsListCall) Fields(s ...googleapi.Field) *AvailableProjectsListCall { 2027 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2028 return c 2029} 2030 2031// IfNoneMatch sets the optional parameter which makes the operation 2032// fail if the object's ETag matches the given value. This is useful for 2033// getting updates only after the object has changed since the last 2034// request. Use googleapi.IsNotModified to check whether the response 2035// error from Do is the result of In-None-Match. 2036func (c *AvailableProjectsListCall) IfNoneMatch(entityTag string) *AvailableProjectsListCall { 2037 c.ifNoneMatch_ = entityTag 2038 return c 2039} 2040 2041// Context sets the context to be used in this call's Do method. Any 2042// pending HTTP request will be aborted if the provided context is 2043// canceled. 2044func (c *AvailableProjectsListCall) Context(ctx context.Context) *AvailableProjectsListCall { 2045 c.ctx_ = ctx 2046 return c 2047} 2048 2049// Header returns an http.Header that can be modified by the caller to 2050// add HTTP headers to the request. 2051func (c *AvailableProjectsListCall) Header() http.Header { 2052 if c.header_ == nil { 2053 c.header_ = make(http.Header) 2054 } 2055 return c.header_ 2056} 2057 2058func (c *AvailableProjectsListCall) doRequest(alt string) (*http.Response, error) { 2059 reqHeaders := make(http.Header) 2060 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 2061 for k, v := range c.header_ { 2062 reqHeaders[k] = v 2063 } 2064 reqHeaders.Set("User-Agent", c.s.userAgent()) 2065 if c.ifNoneMatch_ != "" { 2066 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 2067 } 2068 var body io.Reader = nil 2069 c.urlParams_.Set("alt", alt) 2070 c.urlParams_.Set("prettyPrint", "false") 2071 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/availableProjects") 2072 urls += "?" + c.urlParams_.Encode() 2073 req, err := http.NewRequest("GET", urls, body) 2074 if err != nil { 2075 return nil, err 2076 } 2077 req.Header = reqHeaders 2078 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2079} 2080 2081// Do executes the "firebase.availableProjects.list" call. 2082// Exactly one of *ListAvailableProjectsResponse or error will be 2083// non-nil. Any non-2xx status code is an error. Response headers are in 2084// either *ListAvailableProjectsResponse.ServerResponse.Header or (if a 2085// response was returned at all) in error.(*googleapi.Error).Header. Use 2086// googleapi.IsNotModified to check whether the returned error was 2087// because http.StatusNotModified was returned. 2088func (c *AvailableProjectsListCall) Do(opts ...googleapi.CallOption) (*ListAvailableProjectsResponse, error) { 2089 gensupport.SetOptions(c.urlParams_, opts...) 2090 res, err := c.doRequest("json") 2091 if res != nil && res.StatusCode == http.StatusNotModified { 2092 if res.Body != nil { 2093 res.Body.Close() 2094 } 2095 return nil, &googleapi.Error{ 2096 Code: res.StatusCode, 2097 Header: res.Header, 2098 } 2099 } 2100 if err != nil { 2101 return nil, err 2102 } 2103 defer googleapi.CloseBody(res) 2104 if err := googleapi.CheckResponse(res); err != nil { 2105 return nil, err 2106 } 2107 ret := &ListAvailableProjectsResponse{ 2108 ServerResponse: googleapi.ServerResponse{ 2109 Header: res.Header, 2110 HTTPStatusCode: res.StatusCode, 2111 }, 2112 } 2113 target := &ret 2114 if err := gensupport.DecodeResponse(target, res); err != nil { 2115 return nil, err 2116 } 2117 return ret, nil 2118 // { 2119 // "description": "Returns a list of [Google Cloud Platform (GCP) `Projects`]\n(https://cloud.google.com/resource-manager/reference/rest/v1/projects)\nthat are available to have Firebase resources added to them.\n\u003cbr\u003e\n\u003cbr\u003eA GCP `Project` will only be returned if:\n\u003col\u003e\n \u003cli\u003e\u003cp\u003eThe caller has sufficient\n [Google IAM](https://cloud.google.com/iam) permissions to call\n AddFirebase.\u003c/p\u003e\u003c/li\u003e\n \u003cli\u003e\u003cp\u003eThe GCP `Project` is not already a FirebaseProject.\u003c/p\u003e\u003c/li\u003e\n \u003cli\u003e\u003cp\u003eThe GCP `Project` is not in an Organization which has policies\n that prevent Firebase resources from being added.\u003c/p\u003e\u003c/li\u003e\n\u003c/ol\u003e", 2120 // "flatPath": "v1beta1/availableProjects", 2121 // "httpMethod": "GET", 2122 // "id": "firebase.availableProjects.list", 2123 // "parameterOrder": [], 2124 // "parameters": { 2125 // "pageSize": { 2126 // "description": "The maximum number of GCP `Projects` to return in the response.\n\u003cbr\u003e\n\u003cbr\u003eThe server may return fewer than this value at its discretion.\nIf no value is specified (or too large a value is specified), the server\nwill impose its own limit.\n\u003cbr\u003e\n\u003cbr\u003eThis value cannot be negative.", 2127 // "format": "int32", 2128 // "location": "query", 2129 // "type": "integer" 2130 // }, 2131 // "pageToken": { 2132 // "description": "Token returned from a previous call to `ListAvailableProjects`\nindicating where in the set of GCP `Projects` to resume listing.", 2133 // "location": "query", 2134 // "type": "string" 2135 // } 2136 // }, 2137 // "path": "v1beta1/availableProjects", 2138 // "response": { 2139 // "$ref": "ListAvailableProjectsResponse" 2140 // }, 2141 // "scopes": [ 2142 // "https://www.googleapis.com/auth/cloud-platform", 2143 // "https://www.googleapis.com/auth/cloud-platform.read-only", 2144 // "https://www.googleapis.com/auth/firebase", 2145 // "https://www.googleapis.com/auth/firebase.readonly" 2146 // ] 2147 // } 2148 2149} 2150 2151// Pages invokes f for each page of results. 2152// A non-nil error returned from f will halt the iteration. 2153// The provided context supersedes any context provided to the Context method. 2154func (c *AvailableProjectsListCall) Pages(ctx context.Context, f func(*ListAvailableProjectsResponse) error) error { 2155 c.ctx_ = ctx 2156 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 2157 for { 2158 x, err := c.Do() 2159 if err != nil { 2160 return err 2161 } 2162 if err := f(x); err != nil { 2163 return err 2164 } 2165 if x.NextPageToken == "" { 2166 return nil 2167 } 2168 c.PageToken(x.NextPageToken) 2169 } 2170} 2171 2172// method id "firebase.operations.get": 2173 2174type OperationsGetCall struct { 2175 s *Service 2176 name string 2177 urlParams_ gensupport.URLParams 2178 ifNoneMatch_ string 2179 ctx_ context.Context 2180 header_ http.Header 2181} 2182 2183// Get: Gets the latest state of a long-running operation. Clients can 2184// use this 2185// method to poll the operation result at intervals as recommended by 2186// the API 2187// service. 2188func (r *OperationsService) Get(name string) *OperationsGetCall { 2189 c := &OperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2190 c.name = name 2191 return c 2192} 2193 2194// Fields allows partial responses to be retrieved. See 2195// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2196// for more information. 2197func (c *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall { 2198 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2199 return c 2200} 2201 2202// IfNoneMatch sets the optional parameter which makes the operation 2203// fail if the object's ETag matches the given value. This is useful for 2204// getting updates only after the object has changed since the last 2205// request. Use googleapi.IsNotModified to check whether the response 2206// error from Do is the result of In-None-Match. 2207func (c *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall { 2208 c.ifNoneMatch_ = entityTag 2209 return c 2210} 2211 2212// Context sets the context to be used in this call's Do method. Any 2213// pending HTTP request will be aborted if the provided context is 2214// canceled. 2215func (c *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall { 2216 c.ctx_ = ctx 2217 return c 2218} 2219 2220// Header returns an http.Header that can be modified by the caller to 2221// add HTTP headers to the request. 2222func (c *OperationsGetCall) Header() http.Header { 2223 if c.header_ == nil { 2224 c.header_ = make(http.Header) 2225 } 2226 return c.header_ 2227} 2228 2229func (c *OperationsGetCall) doRequest(alt string) (*http.Response, error) { 2230 reqHeaders := make(http.Header) 2231 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 2232 for k, v := range c.header_ { 2233 reqHeaders[k] = v 2234 } 2235 reqHeaders.Set("User-Agent", c.s.userAgent()) 2236 if c.ifNoneMatch_ != "" { 2237 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 2238 } 2239 var body io.Reader = nil 2240 c.urlParams_.Set("alt", alt) 2241 c.urlParams_.Set("prettyPrint", "false") 2242 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 2243 urls += "?" + c.urlParams_.Encode() 2244 req, err := http.NewRequest("GET", urls, body) 2245 if err != nil { 2246 return nil, err 2247 } 2248 req.Header = reqHeaders 2249 googleapi.Expand(req.URL, map[string]string{ 2250 "name": c.name, 2251 }) 2252 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2253} 2254 2255// Do executes the "firebase.operations.get" call. 2256// Exactly one of *Operation or error will be non-nil. Any non-2xx 2257// status code is an error. Response headers are in either 2258// *Operation.ServerResponse.Header or (if a response was returned at 2259// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 2260// to check whether the returned error was because 2261// http.StatusNotModified was returned. 2262func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 2263 gensupport.SetOptions(c.urlParams_, opts...) 2264 res, err := c.doRequest("json") 2265 if res != nil && res.StatusCode == http.StatusNotModified { 2266 if res.Body != nil { 2267 res.Body.Close() 2268 } 2269 return nil, &googleapi.Error{ 2270 Code: res.StatusCode, 2271 Header: res.Header, 2272 } 2273 } 2274 if err != nil { 2275 return nil, err 2276 } 2277 defer googleapi.CloseBody(res) 2278 if err := googleapi.CheckResponse(res); err != nil { 2279 return nil, err 2280 } 2281 ret := &Operation{ 2282 ServerResponse: googleapi.ServerResponse{ 2283 Header: res.Header, 2284 HTTPStatusCode: res.StatusCode, 2285 }, 2286 } 2287 target := &ret 2288 if err := gensupport.DecodeResponse(target, res); err != nil { 2289 return nil, err 2290 } 2291 return ret, nil 2292 // { 2293 // "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", 2294 // "flatPath": "v1beta1/operations/{operationsId}", 2295 // "httpMethod": "GET", 2296 // "id": "firebase.operations.get", 2297 // "parameterOrder": [ 2298 // "name" 2299 // ], 2300 // "parameters": { 2301 // "name": { 2302 // "description": "The name of the operation resource.", 2303 // "location": "path", 2304 // "pattern": "^operations/.+$", 2305 // "required": true, 2306 // "type": "string" 2307 // } 2308 // }, 2309 // "path": "v1beta1/{+name}", 2310 // "response": { 2311 // "$ref": "Operation" 2312 // }, 2313 // "scopes": [ 2314 // "https://www.googleapis.com/auth/cloud-platform", 2315 // "https://www.googleapis.com/auth/cloud-platform.read-only", 2316 // "https://www.googleapis.com/auth/firebase", 2317 // "https://www.googleapis.com/auth/firebase.readonly" 2318 // ] 2319 // } 2320 2321} 2322 2323// method id "firebase.projects.addFirebase": 2324 2325type ProjectsAddFirebaseCall struct { 2326 s *Service 2327 project string 2328 addfirebaserequest *AddFirebaseRequest 2329 urlParams_ gensupport.URLParams 2330 ctx_ context.Context 2331 header_ http.Header 2332} 2333 2334// AddFirebase: Adds Firebase resources to the specified 2335// existing 2336// [Google Cloud Platform (GCP) 2337// `Project`] 2338// (https://cloud.google.com/resource-manager/reference/rest/v 2339// 1/projects). 2340// <br> 2341// <br>Since a FirebaseProject is actually also a GCP `Project`, 2342// a 2343// `FirebaseProject` uses underlying GCP identifiers (most 2344// importantly, 2345// the `projectId`) as its own for easy interop with GCP 2346// APIs. 2347// <br> 2348// <br>The result of this call is an 2349// [`Operation`](../../v1beta1/operations). 2350// Poll the `Operation` to track the provisioning process by 2351// calling 2352// GetOperation 2353// until 2354// [`done`](../../v1beta1/operations#Operation.FIELDS.done) is `true`. 2355// When 2356// `done` is `true`, the `Operation` has either succeeded or failed. If 2357// the 2358// `Operation` succeeded, 2359// its 2360// [`response`](../../v1beta1/operations#Operation.FIELDS.response) is 2361// set to 2362// a FirebaseProject; if the `Operation` failed, 2363// its 2364// [`error`](../../v1beta1/operations#Operation.FIELDS.error) is set to 2365// a 2366// google.rpc.Status. The `Operation` is automatically deleted 2367// after 2368// completion, so there is no need to 2369// call 2370// DeleteOperation. 2371// <br> 2372// <br>This method does not modify any billing account information on 2373// the 2374// underlying GCP `Project`. 2375// <br> 2376// <br>To call `AddFirebase`, a member must be an Editor or Owner for 2377// the 2378// existing GCP `Project`. Service accounts cannot call `AddFirebase`. 2379func (r *ProjectsService) AddFirebase(project string, addfirebaserequest *AddFirebaseRequest) *ProjectsAddFirebaseCall { 2380 c := &ProjectsAddFirebaseCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2381 c.project = project 2382 c.addfirebaserequest = addfirebaserequest 2383 return c 2384} 2385 2386// Fields allows partial responses to be retrieved. See 2387// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2388// for more information. 2389func (c *ProjectsAddFirebaseCall) Fields(s ...googleapi.Field) *ProjectsAddFirebaseCall { 2390 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2391 return c 2392} 2393 2394// Context sets the context to be used in this call's Do method. Any 2395// pending HTTP request will be aborted if the provided context is 2396// canceled. 2397func (c *ProjectsAddFirebaseCall) Context(ctx context.Context) *ProjectsAddFirebaseCall { 2398 c.ctx_ = ctx 2399 return c 2400} 2401 2402// Header returns an http.Header that can be modified by the caller to 2403// add HTTP headers to the request. 2404func (c *ProjectsAddFirebaseCall) Header() http.Header { 2405 if c.header_ == nil { 2406 c.header_ = make(http.Header) 2407 } 2408 return c.header_ 2409} 2410 2411func (c *ProjectsAddFirebaseCall) doRequest(alt string) (*http.Response, error) { 2412 reqHeaders := make(http.Header) 2413 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 2414 for k, v := range c.header_ { 2415 reqHeaders[k] = v 2416 } 2417 reqHeaders.Set("User-Agent", c.s.userAgent()) 2418 var body io.Reader = nil 2419 body, err := googleapi.WithoutDataWrapper.JSONReader(c.addfirebaserequest) 2420 if err != nil { 2421 return nil, err 2422 } 2423 reqHeaders.Set("Content-Type", "application/json") 2424 c.urlParams_.Set("alt", alt) 2425 c.urlParams_.Set("prettyPrint", "false") 2426 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+project}:addFirebase") 2427 urls += "?" + c.urlParams_.Encode() 2428 req, err := http.NewRequest("POST", urls, body) 2429 if err != nil { 2430 return nil, err 2431 } 2432 req.Header = reqHeaders 2433 googleapi.Expand(req.URL, map[string]string{ 2434 "project": c.project, 2435 }) 2436 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2437} 2438 2439// Do executes the "firebase.projects.addFirebase" call. 2440// Exactly one of *Operation or error will be non-nil. Any non-2xx 2441// status code is an error. Response headers are in either 2442// *Operation.ServerResponse.Header or (if a response was returned at 2443// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 2444// to check whether the returned error was because 2445// http.StatusNotModified was returned. 2446func (c *ProjectsAddFirebaseCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 2447 gensupport.SetOptions(c.urlParams_, opts...) 2448 res, err := c.doRequest("json") 2449 if res != nil && res.StatusCode == http.StatusNotModified { 2450 if res.Body != nil { 2451 res.Body.Close() 2452 } 2453 return nil, &googleapi.Error{ 2454 Code: res.StatusCode, 2455 Header: res.Header, 2456 } 2457 } 2458 if err != nil { 2459 return nil, err 2460 } 2461 defer googleapi.CloseBody(res) 2462 if err := googleapi.CheckResponse(res); err != nil { 2463 return nil, err 2464 } 2465 ret := &Operation{ 2466 ServerResponse: googleapi.ServerResponse{ 2467 Header: res.Header, 2468 HTTPStatusCode: res.StatusCode, 2469 }, 2470 } 2471 target := &ret 2472 if err := gensupport.DecodeResponse(target, res); err != nil { 2473 return nil, err 2474 } 2475 return ret, nil 2476 // { 2477 // "description": "Adds Firebase resources to the specified existing\n[Google Cloud Platform (GCP) `Project`]\n(https://cloud.google.com/resource-manager/reference/rest/v1/projects).\n\u003cbr\u003e\n\u003cbr\u003eSince a FirebaseProject is actually also a GCP `Project`, a\n`FirebaseProject` uses underlying GCP identifiers (most importantly,\nthe `projectId`) as its own for easy interop with GCP APIs.\n\u003cbr\u003e\n\u003cbr\u003eThe result of this call is an [`Operation`](../../v1beta1/operations).\nPoll the `Operation` to track the provisioning process by calling\nGetOperation until\n[`done`](../../v1beta1/operations#Operation.FIELDS.done) is `true`. When\n`done` is `true`, the `Operation` has either succeeded or failed. If the\n`Operation` succeeded, its\n[`response`](../../v1beta1/operations#Operation.FIELDS.response) is set to\na FirebaseProject; if the `Operation` failed, its\n[`error`](../../v1beta1/operations#Operation.FIELDS.error) is set to a\ngoogle.rpc.Status. The `Operation` is automatically deleted after\ncompletion, so there is no need to call\nDeleteOperation.\n\u003cbr\u003e\n\u003cbr\u003eThis method does not modify any billing account information on the\nunderlying GCP `Project`.\n\u003cbr\u003e\n\u003cbr\u003eTo call `AddFirebase`, a member must be an Editor or Owner for the\nexisting GCP `Project`. Service accounts cannot call `AddFirebase`.", 2478 // "flatPath": "v1beta1/projects/{projectsId}:addFirebase", 2479 // "httpMethod": "POST", 2480 // "id": "firebase.projects.addFirebase", 2481 // "parameterOrder": [ 2482 // "project" 2483 // ], 2484 // "parameters": { 2485 // "project": { 2486 // "description": "The resource name of the GCP `Project` to which Firebase resources will be\nadded, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e\nAfter calling `AddFirebase`, the\n[`projectId`](https://cloud.google.com/resource-manager/reference/rest/v1/projects#Project.FIELDS.project_id)\nof the GCP `Project` is also the `projectId` of the FirebaseProject.", 2487 // "location": "path", 2488 // "pattern": "^projects/[^/]+$", 2489 // "required": true, 2490 // "type": "string" 2491 // } 2492 // }, 2493 // "path": "v1beta1/{+project}:addFirebase", 2494 // "request": { 2495 // "$ref": "AddFirebaseRequest" 2496 // }, 2497 // "response": { 2498 // "$ref": "Operation" 2499 // }, 2500 // "scopes": [ 2501 // "https://www.googleapis.com/auth/cloud-platform", 2502 // "https://www.googleapis.com/auth/firebase" 2503 // ] 2504 // } 2505 2506} 2507 2508// method id "firebase.projects.addGoogleAnalytics": 2509 2510type ProjectsAddGoogleAnalyticsCall struct { 2511 s *Service 2512 parent string 2513 addgoogleanalyticsrequest *AddGoogleAnalyticsRequest 2514 urlParams_ gensupport.URLParams 2515 ctx_ context.Context 2516 header_ http.Header 2517} 2518 2519// AddGoogleAnalytics: Links a FirebaseProject with an existing 2520// [Google Analytics 2521// account](http://www.google.com/analytics/). 2522// <br> 2523// <br>Using this call, you can either: 2524// <ul> 2525// <li>Specify an `analyticsAccountId` to provision a new Google 2526// Analytics 2527// property within the specified account and associate the new property 2528// with 2529// your `FirebaseProject`.</li> 2530// <li>Specify an existing `analyticsPropertyId` to associate the 2531// property 2532// with your `FirebaseProject`.</li> 2533// </ul> 2534// <br> 2535// Note that when you call `AddGoogleAnalytics`: 2536// <ol> 2537// <li>The first check determines if any existing data streams in 2538// the 2539// Google Analytics property correspond to any existing Firebase Apps in 2540// your 2541// `FirebaseProject` (based on the `packageName` or `bundleId` 2542// associated with 2543// the data stream). Then, as applicable, the data streams and apps 2544// are 2545// linked. Note that this auto-linking only applies to Android Apps and 2546// iOS 2547// Apps.</li> 2548// <li>If no corresponding data streams are found for your Firebase 2549// Apps, 2550// new data streams are provisioned in the Google Analytics property 2551// for each of your Firebase Apps. Note that a new data stream is 2552// always 2553// provisioned for a Web App even if it was previously associated with 2554// a 2555// data stream in your Analytics property.</li> 2556// </ol> 2557// Learn more about the hierarchy and structure of Google 2558// Analytics 2559// accounts in 2560// the 2561// [Analytics 2562// documentation](https://support.google.com/analytics/ans 2563// wer/9303323). 2564// <br> 2565// <br>The result of this call is an 2566// [`Operation`](../../v1beta1/operations). 2567// Poll the `Operation` to track the provisioning process by 2568// calling 2569// GetOperation 2570// until 2571// [`done`](../../v1beta1/operations#Operation.FIELDS.done) is `true`. 2572// When 2573// `done` is `true`, the `Operation` has either succeeded or failed. If 2574// the 2575// `Operation` succeeded, 2576// its 2577// [`response`](../../v1beta1/operations#Operation.FIELDS.response) is 2578// set to 2579// an AnalyticsDetails; if the `Operation` failed, 2580// its 2581// [`error`](../../v1beta1/operations#Operation.FIELDS.error) is set to 2582// a 2583// google.rpc.Status. 2584// <br> 2585// <br>To call `AddGoogleAnalytics`, a member must be an Owner for 2586// the existing `FirebaseProject` and have the 2587// [`Edit` 2588// permission](https://support.google.com/analytics/answer/2884495) 2589// for the Google Analytics account. 2590// <br> 2591// <br>If a `FirebaseProject` already has Google Analytics enabled, and 2592// you 2593// call `AddGoogleAnalytics` using an `analyticsPropertyId` that's 2594// different 2595// from the currently associated property, then the call will fail. 2596// Analytics 2597// may have already been enabled in the Firebase console or by 2598// specifying 2599// `timeZone` and `regionCode` in the call 2600// to 2601// [`AddFirebase`](../../v1beta1/projects/addFirebase). 2602func (r *ProjectsService) AddGoogleAnalytics(parent string, addgoogleanalyticsrequest *AddGoogleAnalyticsRequest) *ProjectsAddGoogleAnalyticsCall { 2603 c := &ProjectsAddGoogleAnalyticsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2604 c.parent = parent 2605 c.addgoogleanalyticsrequest = addgoogleanalyticsrequest 2606 return c 2607} 2608 2609// Fields allows partial responses to be retrieved. See 2610// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2611// for more information. 2612func (c *ProjectsAddGoogleAnalyticsCall) Fields(s ...googleapi.Field) *ProjectsAddGoogleAnalyticsCall { 2613 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2614 return c 2615} 2616 2617// Context sets the context to be used in this call's Do method. Any 2618// pending HTTP request will be aborted if the provided context is 2619// canceled. 2620func (c *ProjectsAddGoogleAnalyticsCall) Context(ctx context.Context) *ProjectsAddGoogleAnalyticsCall { 2621 c.ctx_ = ctx 2622 return c 2623} 2624 2625// Header returns an http.Header that can be modified by the caller to 2626// add HTTP headers to the request. 2627func (c *ProjectsAddGoogleAnalyticsCall) Header() http.Header { 2628 if c.header_ == nil { 2629 c.header_ = make(http.Header) 2630 } 2631 return c.header_ 2632} 2633 2634func (c *ProjectsAddGoogleAnalyticsCall) doRequest(alt string) (*http.Response, error) { 2635 reqHeaders := make(http.Header) 2636 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 2637 for k, v := range c.header_ { 2638 reqHeaders[k] = v 2639 } 2640 reqHeaders.Set("User-Agent", c.s.userAgent()) 2641 var body io.Reader = nil 2642 body, err := googleapi.WithoutDataWrapper.JSONReader(c.addgoogleanalyticsrequest) 2643 if err != nil { 2644 return nil, err 2645 } 2646 reqHeaders.Set("Content-Type", "application/json") 2647 c.urlParams_.Set("alt", alt) 2648 c.urlParams_.Set("prettyPrint", "false") 2649 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}:addGoogleAnalytics") 2650 urls += "?" + c.urlParams_.Encode() 2651 req, err := http.NewRequest("POST", urls, body) 2652 if err != nil { 2653 return nil, err 2654 } 2655 req.Header = reqHeaders 2656 googleapi.Expand(req.URL, map[string]string{ 2657 "parent": c.parent, 2658 }) 2659 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2660} 2661 2662// Do executes the "firebase.projects.addGoogleAnalytics" call. 2663// Exactly one of *Operation or error will be non-nil. Any non-2xx 2664// status code is an error. Response headers are in either 2665// *Operation.ServerResponse.Header or (if a response was returned at 2666// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 2667// to check whether the returned error was because 2668// http.StatusNotModified was returned. 2669func (c *ProjectsAddGoogleAnalyticsCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 2670 gensupport.SetOptions(c.urlParams_, opts...) 2671 res, err := c.doRequest("json") 2672 if res != nil && res.StatusCode == http.StatusNotModified { 2673 if res.Body != nil { 2674 res.Body.Close() 2675 } 2676 return nil, &googleapi.Error{ 2677 Code: res.StatusCode, 2678 Header: res.Header, 2679 } 2680 } 2681 if err != nil { 2682 return nil, err 2683 } 2684 defer googleapi.CloseBody(res) 2685 if err := googleapi.CheckResponse(res); err != nil { 2686 return nil, err 2687 } 2688 ret := &Operation{ 2689 ServerResponse: googleapi.ServerResponse{ 2690 Header: res.Header, 2691 HTTPStatusCode: res.StatusCode, 2692 }, 2693 } 2694 target := &ret 2695 if err := gensupport.DecodeResponse(target, res); err != nil { 2696 return nil, err 2697 } 2698 return ret, nil 2699 // { 2700 // "description": "Links a FirebaseProject with an existing\n[Google Analytics account](http://www.google.com/analytics/).\n\u003cbr\u003e\n\u003cbr\u003eUsing this call, you can either:\n\u003cul\u003e\n\u003cli\u003eSpecify an `analyticsAccountId` to provision a new Google Analytics\nproperty within the specified account and associate the new property with\nyour `FirebaseProject`.\u003c/li\u003e\n\u003cli\u003eSpecify an existing `analyticsPropertyId` to associate the property\nwith your `FirebaseProject`.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cbr\u003e\nNote that when you call `AddGoogleAnalytics`:\n\u003col\u003e\n\u003cli\u003eThe first check determines if any existing data streams in the\nGoogle Analytics property correspond to any existing Firebase Apps in your\n`FirebaseProject` (based on the `packageName` or `bundleId` associated with\nthe data stream). Then, as applicable, the data streams and apps are\nlinked. Note that this auto-linking only applies to Android Apps and iOS\nApps.\u003c/li\u003e\n\u003cli\u003eIf no corresponding data streams are found for your Firebase Apps,\nnew data streams are provisioned in the Google Analytics property\nfor each of your Firebase Apps. Note that a new data stream is always\nprovisioned for a Web App even if it was previously associated with a\ndata stream in your Analytics property.\u003c/li\u003e\n\u003c/ol\u003e\nLearn more about the hierarchy and structure of Google Analytics\naccounts in the\n[Analytics\ndocumentation](https://support.google.com/analytics/answer/9303323).\n\u003cbr\u003e\n\u003cbr\u003eThe result of this call is an [`Operation`](../../v1beta1/operations).\nPoll the `Operation` to track the provisioning process by calling\nGetOperation until\n[`done`](../../v1beta1/operations#Operation.FIELDS.done) is `true`. When\n`done` is `true`, the `Operation` has either succeeded or failed. If the\n`Operation` succeeded, its\n[`response`](../../v1beta1/operations#Operation.FIELDS.response) is set to\nan AnalyticsDetails; if the `Operation` failed, its\n[`error`](../../v1beta1/operations#Operation.FIELDS.error) is set to a\ngoogle.rpc.Status.\n\u003cbr\u003e\n\u003cbr\u003eTo call `AddGoogleAnalytics`, a member must be an Owner for\nthe existing `FirebaseProject` and have the\n[`Edit` permission](https://support.google.com/analytics/answer/2884495)\nfor the Google Analytics account.\n\u003cbr\u003e\n\u003cbr\u003eIf a `FirebaseProject` already has Google Analytics enabled, and you\ncall `AddGoogleAnalytics` using an `analyticsPropertyId` that's different\nfrom the currently associated property, then the call will fail. Analytics\nmay have already been enabled in the Firebase console or by specifying\n`timeZone` and `regionCode` in the call to\n[`AddFirebase`](../../v1beta1/projects/addFirebase).", 2701 // "flatPath": "v1beta1/projects/{projectsId}:addGoogleAnalytics", 2702 // "httpMethod": "POST", 2703 // "id": "firebase.projects.addGoogleAnalytics", 2704 // "parameterOrder": [ 2705 // "parent" 2706 // ], 2707 // "parameters": { 2708 // "parent": { 2709 // "description": "The parent `FirebaseProject` to link to an existing Google Analytics\naccount, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 2710 // "location": "path", 2711 // "pattern": "^projects/[^/]+$", 2712 // "required": true, 2713 // "type": "string" 2714 // } 2715 // }, 2716 // "path": "v1beta1/{+parent}:addGoogleAnalytics", 2717 // "request": { 2718 // "$ref": "AddGoogleAnalyticsRequest" 2719 // }, 2720 // "response": { 2721 // "$ref": "Operation" 2722 // }, 2723 // "scopes": [ 2724 // "https://www.googleapis.com/auth/cloud-platform", 2725 // "https://www.googleapis.com/auth/firebase" 2726 // ] 2727 // } 2728 2729} 2730 2731// method id "firebase.projects.get": 2732 2733type ProjectsGetCall struct { 2734 s *Service 2735 name string 2736 urlParams_ gensupport.URLParams 2737 ifNoneMatch_ string 2738 ctx_ context.Context 2739 header_ http.Header 2740} 2741 2742// Get: Gets the FirebaseProject identified by the specified resource 2743// name. 2744func (r *ProjectsService) Get(name string) *ProjectsGetCall { 2745 c := &ProjectsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2746 c.name = name 2747 return c 2748} 2749 2750// Fields allows partial responses to be retrieved. See 2751// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2752// for more information. 2753func (c *ProjectsGetCall) Fields(s ...googleapi.Field) *ProjectsGetCall { 2754 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2755 return c 2756} 2757 2758// IfNoneMatch sets the optional parameter which makes the operation 2759// fail if the object's ETag matches the given value. This is useful for 2760// getting updates only after the object has changed since the last 2761// request. Use googleapi.IsNotModified to check whether the response 2762// error from Do is the result of In-None-Match. 2763func (c *ProjectsGetCall) IfNoneMatch(entityTag string) *ProjectsGetCall { 2764 c.ifNoneMatch_ = entityTag 2765 return c 2766} 2767 2768// Context sets the context to be used in this call's Do method. Any 2769// pending HTTP request will be aborted if the provided context is 2770// canceled. 2771func (c *ProjectsGetCall) Context(ctx context.Context) *ProjectsGetCall { 2772 c.ctx_ = ctx 2773 return c 2774} 2775 2776// Header returns an http.Header that can be modified by the caller to 2777// add HTTP headers to the request. 2778func (c *ProjectsGetCall) Header() http.Header { 2779 if c.header_ == nil { 2780 c.header_ = make(http.Header) 2781 } 2782 return c.header_ 2783} 2784 2785func (c *ProjectsGetCall) doRequest(alt string) (*http.Response, error) { 2786 reqHeaders := make(http.Header) 2787 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 2788 for k, v := range c.header_ { 2789 reqHeaders[k] = v 2790 } 2791 reqHeaders.Set("User-Agent", c.s.userAgent()) 2792 if c.ifNoneMatch_ != "" { 2793 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 2794 } 2795 var body io.Reader = nil 2796 c.urlParams_.Set("alt", alt) 2797 c.urlParams_.Set("prettyPrint", "false") 2798 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 2799 urls += "?" + c.urlParams_.Encode() 2800 req, err := http.NewRequest("GET", urls, body) 2801 if err != nil { 2802 return nil, err 2803 } 2804 req.Header = reqHeaders 2805 googleapi.Expand(req.URL, map[string]string{ 2806 "name": c.name, 2807 }) 2808 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2809} 2810 2811// Do executes the "firebase.projects.get" call. 2812// Exactly one of *FirebaseProject or error will be non-nil. Any non-2xx 2813// status code is an error. Response headers are in either 2814// *FirebaseProject.ServerResponse.Header or (if a response was returned 2815// at all) in error.(*googleapi.Error).Header. Use 2816// googleapi.IsNotModified to check whether the returned error was 2817// because http.StatusNotModified was returned. 2818func (c *ProjectsGetCall) Do(opts ...googleapi.CallOption) (*FirebaseProject, error) { 2819 gensupport.SetOptions(c.urlParams_, opts...) 2820 res, err := c.doRequest("json") 2821 if res != nil && res.StatusCode == http.StatusNotModified { 2822 if res.Body != nil { 2823 res.Body.Close() 2824 } 2825 return nil, &googleapi.Error{ 2826 Code: res.StatusCode, 2827 Header: res.Header, 2828 } 2829 } 2830 if err != nil { 2831 return nil, err 2832 } 2833 defer googleapi.CloseBody(res) 2834 if err := googleapi.CheckResponse(res); err != nil { 2835 return nil, err 2836 } 2837 ret := &FirebaseProject{ 2838 ServerResponse: googleapi.ServerResponse{ 2839 Header: res.Header, 2840 HTTPStatusCode: res.StatusCode, 2841 }, 2842 } 2843 target := &ret 2844 if err := gensupport.DecodeResponse(target, res); err != nil { 2845 return nil, err 2846 } 2847 return ret, nil 2848 // { 2849 // "description": "Gets the FirebaseProject identified by the specified resource name.", 2850 // "flatPath": "v1beta1/projects/{projectsId}", 2851 // "httpMethod": "GET", 2852 // "id": "firebase.projects.get", 2853 // "parameterOrder": [ 2854 // "name" 2855 // ], 2856 // "parameters": { 2857 // "name": { 2858 // "description": "The fully qualified resource name of the Project, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 2859 // "location": "path", 2860 // "pattern": "^projects/[^/]+$", 2861 // "required": true, 2862 // "type": "string" 2863 // } 2864 // }, 2865 // "path": "v1beta1/{+name}", 2866 // "response": { 2867 // "$ref": "FirebaseProject" 2868 // }, 2869 // "scopes": [ 2870 // "https://www.googleapis.com/auth/cloud-platform", 2871 // "https://www.googleapis.com/auth/cloud-platform.read-only", 2872 // "https://www.googleapis.com/auth/firebase", 2873 // "https://www.googleapis.com/auth/firebase.readonly" 2874 // ] 2875 // } 2876 2877} 2878 2879// method id "firebase.projects.getAdminSdkConfig": 2880 2881type ProjectsGetAdminSdkConfigCall struct { 2882 s *Service 2883 name string 2884 urlParams_ gensupport.URLParams 2885 ifNoneMatch_ string 2886 ctx_ context.Context 2887 header_ http.Header 2888} 2889 2890// GetAdminSdkConfig: Gets the configuration artifact used by servers to 2891// simplify initialization. 2892// <br> 2893// <br>Typically, this configuration is used with the Firebase Admin 2894// SDK 2895// [initializeApp](https://firebase.google.com/docs/admin/setup#initi 2896// alize_the_sdk) 2897// command. 2898func (r *ProjectsService) GetAdminSdkConfig(name string) *ProjectsGetAdminSdkConfigCall { 2899 c := &ProjectsGetAdminSdkConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2900 c.name = name 2901 return c 2902} 2903 2904// Fields allows partial responses to be retrieved. See 2905// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2906// for more information. 2907func (c *ProjectsGetAdminSdkConfigCall) Fields(s ...googleapi.Field) *ProjectsGetAdminSdkConfigCall { 2908 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2909 return c 2910} 2911 2912// IfNoneMatch sets the optional parameter which makes the operation 2913// fail if the object's ETag matches the given value. This is useful for 2914// getting updates only after the object has changed since the last 2915// request. Use googleapi.IsNotModified to check whether the response 2916// error from Do is the result of In-None-Match. 2917func (c *ProjectsGetAdminSdkConfigCall) IfNoneMatch(entityTag string) *ProjectsGetAdminSdkConfigCall { 2918 c.ifNoneMatch_ = entityTag 2919 return c 2920} 2921 2922// Context sets the context to be used in this call's Do method. Any 2923// pending HTTP request will be aborted if the provided context is 2924// canceled. 2925func (c *ProjectsGetAdminSdkConfigCall) Context(ctx context.Context) *ProjectsGetAdminSdkConfigCall { 2926 c.ctx_ = ctx 2927 return c 2928} 2929 2930// Header returns an http.Header that can be modified by the caller to 2931// add HTTP headers to the request. 2932func (c *ProjectsGetAdminSdkConfigCall) Header() http.Header { 2933 if c.header_ == nil { 2934 c.header_ = make(http.Header) 2935 } 2936 return c.header_ 2937} 2938 2939func (c *ProjectsGetAdminSdkConfigCall) doRequest(alt string) (*http.Response, error) { 2940 reqHeaders := make(http.Header) 2941 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 2942 for k, v := range c.header_ { 2943 reqHeaders[k] = v 2944 } 2945 reqHeaders.Set("User-Agent", c.s.userAgent()) 2946 if c.ifNoneMatch_ != "" { 2947 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 2948 } 2949 var body io.Reader = nil 2950 c.urlParams_.Set("alt", alt) 2951 c.urlParams_.Set("prettyPrint", "false") 2952 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 2953 urls += "?" + c.urlParams_.Encode() 2954 req, err := http.NewRequest("GET", urls, body) 2955 if err != nil { 2956 return nil, err 2957 } 2958 req.Header = reqHeaders 2959 googleapi.Expand(req.URL, map[string]string{ 2960 "name": c.name, 2961 }) 2962 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2963} 2964 2965// Do executes the "firebase.projects.getAdminSdkConfig" call. 2966// Exactly one of *AdminSdkConfig or error will be non-nil. Any non-2xx 2967// status code is an error. Response headers are in either 2968// *AdminSdkConfig.ServerResponse.Header or (if a response was returned 2969// at all) in error.(*googleapi.Error).Header. Use 2970// googleapi.IsNotModified to check whether the returned error was 2971// because http.StatusNotModified was returned. 2972func (c *ProjectsGetAdminSdkConfigCall) Do(opts ...googleapi.CallOption) (*AdminSdkConfig, error) { 2973 gensupport.SetOptions(c.urlParams_, opts...) 2974 res, err := c.doRequest("json") 2975 if res != nil && res.StatusCode == http.StatusNotModified { 2976 if res.Body != nil { 2977 res.Body.Close() 2978 } 2979 return nil, &googleapi.Error{ 2980 Code: res.StatusCode, 2981 Header: res.Header, 2982 } 2983 } 2984 if err != nil { 2985 return nil, err 2986 } 2987 defer googleapi.CloseBody(res) 2988 if err := googleapi.CheckResponse(res); err != nil { 2989 return nil, err 2990 } 2991 ret := &AdminSdkConfig{ 2992 ServerResponse: googleapi.ServerResponse{ 2993 Header: res.Header, 2994 HTTPStatusCode: res.StatusCode, 2995 }, 2996 } 2997 target := &ret 2998 if err := gensupport.DecodeResponse(target, res); err != nil { 2999 return nil, err 3000 } 3001 return ret, nil 3002 // { 3003 // "description": "Gets the configuration artifact used by servers to simplify initialization.\n\u003cbr\u003e\n\u003cbr\u003eTypically, this configuration is used with the Firebase Admin SDK\n[initializeApp](https://firebase.google.com/docs/admin/setup#initialize_the_sdk)\ncommand.", 3004 // "flatPath": "v1beta1/projects/{projectsId}/adminSdkConfig", 3005 // "httpMethod": "GET", 3006 // "id": "firebase.projects.getAdminSdkConfig", 3007 // "parameterOrder": [ 3008 // "name" 3009 // ], 3010 // "parameters": { 3011 // "name": { 3012 // "description": "The fully qualified resource name of the Project, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/adminSdkConfig\u003c/code\u003e", 3013 // "location": "path", 3014 // "pattern": "^projects/[^/]+/adminSdkConfig$", 3015 // "required": true, 3016 // "type": "string" 3017 // } 3018 // }, 3019 // "path": "v1beta1/{+name}", 3020 // "response": { 3021 // "$ref": "AdminSdkConfig" 3022 // }, 3023 // "scopes": [ 3024 // "https://www.googleapis.com/auth/cloud-platform", 3025 // "https://www.googleapis.com/auth/cloud-platform.read-only", 3026 // "https://www.googleapis.com/auth/firebase", 3027 // "https://www.googleapis.com/auth/firebase.readonly" 3028 // ] 3029 // } 3030 3031} 3032 3033// method id "firebase.projects.getAnalyticsDetails": 3034 3035type ProjectsGetAnalyticsDetailsCall struct { 3036 s *Service 3037 name string 3038 urlParams_ gensupport.URLParams 3039 ifNoneMatch_ string 3040 ctx_ context.Context 3041 header_ http.Header 3042} 3043 3044// GetAnalyticsDetails: Gets the Google Analytics details currently 3045// associated with a 3046// FirebaseProject. 3047// <br> 3048// <br>If the `FirebaseProject` is not yet linked to Google Analytics, 3049// then 3050// the response to `GetAnalyticsDetails` is NOT_FOUND. 3051func (r *ProjectsService) GetAnalyticsDetails(name string) *ProjectsGetAnalyticsDetailsCall { 3052 c := &ProjectsGetAnalyticsDetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3053 c.name = name 3054 return c 3055} 3056 3057// Fields allows partial responses to be retrieved. See 3058// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3059// for more information. 3060func (c *ProjectsGetAnalyticsDetailsCall) Fields(s ...googleapi.Field) *ProjectsGetAnalyticsDetailsCall { 3061 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3062 return c 3063} 3064 3065// IfNoneMatch sets the optional parameter which makes the operation 3066// fail if the object's ETag matches the given value. This is useful for 3067// getting updates only after the object has changed since the last 3068// request. Use googleapi.IsNotModified to check whether the response 3069// error from Do is the result of In-None-Match. 3070func (c *ProjectsGetAnalyticsDetailsCall) IfNoneMatch(entityTag string) *ProjectsGetAnalyticsDetailsCall { 3071 c.ifNoneMatch_ = entityTag 3072 return c 3073} 3074 3075// Context sets the context to be used in this call's Do method. Any 3076// pending HTTP request will be aborted if the provided context is 3077// canceled. 3078func (c *ProjectsGetAnalyticsDetailsCall) Context(ctx context.Context) *ProjectsGetAnalyticsDetailsCall { 3079 c.ctx_ = ctx 3080 return c 3081} 3082 3083// Header returns an http.Header that can be modified by the caller to 3084// add HTTP headers to the request. 3085func (c *ProjectsGetAnalyticsDetailsCall) Header() http.Header { 3086 if c.header_ == nil { 3087 c.header_ = make(http.Header) 3088 } 3089 return c.header_ 3090} 3091 3092func (c *ProjectsGetAnalyticsDetailsCall) doRequest(alt string) (*http.Response, error) { 3093 reqHeaders := make(http.Header) 3094 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 3095 for k, v := range c.header_ { 3096 reqHeaders[k] = v 3097 } 3098 reqHeaders.Set("User-Agent", c.s.userAgent()) 3099 if c.ifNoneMatch_ != "" { 3100 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 3101 } 3102 var body io.Reader = nil 3103 c.urlParams_.Set("alt", alt) 3104 c.urlParams_.Set("prettyPrint", "false") 3105 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 3106 urls += "?" + c.urlParams_.Encode() 3107 req, err := http.NewRequest("GET", urls, body) 3108 if err != nil { 3109 return nil, err 3110 } 3111 req.Header = reqHeaders 3112 googleapi.Expand(req.URL, map[string]string{ 3113 "name": c.name, 3114 }) 3115 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3116} 3117 3118// Do executes the "firebase.projects.getAnalyticsDetails" call. 3119// Exactly one of *AnalyticsDetails or error will be non-nil. Any 3120// non-2xx status code is an error. Response headers are in either 3121// *AnalyticsDetails.ServerResponse.Header or (if a response was 3122// returned at all) in error.(*googleapi.Error).Header. Use 3123// googleapi.IsNotModified to check whether the returned error was 3124// because http.StatusNotModified was returned. 3125func (c *ProjectsGetAnalyticsDetailsCall) Do(opts ...googleapi.CallOption) (*AnalyticsDetails, error) { 3126 gensupport.SetOptions(c.urlParams_, opts...) 3127 res, err := c.doRequest("json") 3128 if res != nil && res.StatusCode == http.StatusNotModified { 3129 if res.Body != nil { 3130 res.Body.Close() 3131 } 3132 return nil, &googleapi.Error{ 3133 Code: res.StatusCode, 3134 Header: res.Header, 3135 } 3136 } 3137 if err != nil { 3138 return nil, err 3139 } 3140 defer googleapi.CloseBody(res) 3141 if err := googleapi.CheckResponse(res); err != nil { 3142 return nil, err 3143 } 3144 ret := &AnalyticsDetails{ 3145 ServerResponse: googleapi.ServerResponse{ 3146 Header: res.Header, 3147 HTTPStatusCode: res.StatusCode, 3148 }, 3149 } 3150 target := &ret 3151 if err := gensupport.DecodeResponse(target, res); err != nil { 3152 return nil, err 3153 } 3154 return ret, nil 3155 // { 3156 // "description": "Gets the Google Analytics details currently associated with a\nFirebaseProject.\n\u003cbr\u003e\n\u003cbr\u003eIf the `FirebaseProject` is not yet linked to Google Analytics, then\nthe response to `GetAnalyticsDetails` is NOT_FOUND.", 3157 // "flatPath": "v1beta1/projects/{projectsId}/analyticsDetails", 3158 // "httpMethod": "GET", 3159 // "id": "firebase.projects.getAnalyticsDetails", 3160 // "parameterOrder": [ 3161 // "name" 3162 // ], 3163 // "parameters": { 3164 // "name": { 3165 // "description": "The fully qualified resource name, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/analyticsDetails\u003c/code\u003e", 3166 // "location": "path", 3167 // "pattern": "^projects/[^/]+/analyticsDetails$", 3168 // "required": true, 3169 // "type": "string" 3170 // } 3171 // }, 3172 // "path": "v1beta1/{+name}", 3173 // "response": { 3174 // "$ref": "AnalyticsDetails" 3175 // }, 3176 // "scopes": [ 3177 // "https://www.googleapis.com/auth/cloud-platform", 3178 // "https://www.googleapis.com/auth/cloud-platform.read-only", 3179 // "https://www.googleapis.com/auth/firebase", 3180 // "https://www.googleapis.com/auth/firebase.readonly" 3181 // ] 3182 // } 3183 3184} 3185 3186// method id "firebase.projects.list": 3187 3188type ProjectsListCall struct { 3189 s *Service 3190 urlParams_ gensupport.URLParams 3191 ifNoneMatch_ string 3192 ctx_ context.Context 3193 header_ http.Header 3194} 3195 3196// List: Lists each FirebaseProject accessible to the 3197// caller. 3198// <br> 3199// <br>The elements are returned in no particular order, but they will 3200// be a 3201// consistent view of the Projects when additional requests are made 3202// with a 3203// `pageToken`. 3204// <br> 3205// <br>This method is eventually consistent with Project mutations, 3206// which 3207// means newly provisioned Projects and recent modifications to 3208// existing 3209// Projects might not be reflected in the set of Projects. The list 3210// will 3211// include only ACTIVE Projects. 3212// <br> 3213// <br>Use 3214// GetFirebaseProject 3215// for consistent reads as well as for additional Project details. 3216func (r *ProjectsService) List() *ProjectsListCall { 3217 c := &ProjectsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3218 return c 3219} 3220 3221// PageSize sets the optional parameter "pageSize": The maximum number 3222// of Projects to return in the response. 3223// <br> 3224// <br>The server may return fewer than this at its discretion. 3225// If no value is specified (or too large a value is specified), the 3226// server 3227// will impose its own limit. 3228// <br> 3229// <br>This value cannot be negative. 3230func (c *ProjectsListCall) PageSize(pageSize int64) *ProjectsListCall { 3231 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 3232 return c 3233} 3234 3235// PageToken sets the optional parameter "pageToken": Token returned 3236// from a previous call to `ListFirebaseProjects` indicating 3237// where in the set of Projects to resume listing. 3238func (c *ProjectsListCall) PageToken(pageToken string) *ProjectsListCall { 3239 c.urlParams_.Set("pageToken", pageToken) 3240 return c 3241} 3242 3243// Fields allows partial responses to be retrieved. See 3244// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3245// for more information. 3246func (c *ProjectsListCall) Fields(s ...googleapi.Field) *ProjectsListCall { 3247 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3248 return c 3249} 3250 3251// IfNoneMatch sets the optional parameter which makes the operation 3252// fail if the object's ETag matches the given value. This is useful for 3253// getting updates only after the object has changed since the last 3254// request. Use googleapi.IsNotModified to check whether the response 3255// error from Do is the result of In-None-Match. 3256func (c *ProjectsListCall) IfNoneMatch(entityTag string) *ProjectsListCall { 3257 c.ifNoneMatch_ = entityTag 3258 return c 3259} 3260 3261// Context sets the context to be used in this call's Do method. Any 3262// pending HTTP request will be aborted if the provided context is 3263// canceled. 3264func (c *ProjectsListCall) Context(ctx context.Context) *ProjectsListCall { 3265 c.ctx_ = ctx 3266 return c 3267} 3268 3269// Header returns an http.Header that can be modified by the caller to 3270// add HTTP headers to the request. 3271func (c *ProjectsListCall) Header() http.Header { 3272 if c.header_ == nil { 3273 c.header_ = make(http.Header) 3274 } 3275 return c.header_ 3276} 3277 3278func (c *ProjectsListCall) doRequest(alt string) (*http.Response, error) { 3279 reqHeaders := make(http.Header) 3280 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 3281 for k, v := range c.header_ { 3282 reqHeaders[k] = v 3283 } 3284 reqHeaders.Set("User-Agent", c.s.userAgent()) 3285 if c.ifNoneMatch_ != "" { 3286 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 3287 } 3288 var body io.Reader = nil 3289 c.urlParams_.Set("alt", alt) 3290 c.urlParams_.Set("prettyPrint", "false") 3291 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/projects") 3292 urls += "?" + c.urlParams_.Encode() 3293 req, err := http.NewRequest("GET", urls, body) 3294 if err != nil { 3295 return nil, err 3296 } 3297 req.Header = reqHeaders 3298 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3299} 3300 3301// Do executes the "firebase.projects.list" call. 3302// Exactly one of *ListFirebaseProjectsResponse or error will be 3303// non-nil. Any non-2xx status code is an error. Response headers are in 3304// either *ListFirebaseProjectsResponse.ServerResponse.Header or (if a 3305// response was returned at all) in error.(*googleapi.Error).Header. Use 3306// googleapi.IsNotModified to check whether the returned error was 3307// because http.StatusNotModified was returned. 3308func (c *ProjectsListCall) Do(opts ...googleapi.CallOption) (*ListFirebaseProjectsResponse, error) { 3309 gensupport.SetOptions(c.urlParams_, opts...) 3310 res, err := c.doRequest("json") 3311 if res != nil && res.StatusCode == http.StatusNotModified { 3312 if res.Body != nil { 3313 res.Body.Close() 3314 } 3315 return nil, &googleapi.Error{ 3316 Code: res.StatusCode, 3317 Header: res.Header, 3318 } 3319 } 3320 if err != nil { 3321 return nil, err 3322 } 3323 defer googleapi.CloseBody(res) 3324 if err := googleapi.CheckResponse(res); err != nil { 3325 return nil, err 3326 } 3327 ret := &ListFirebaseProjectsResponse{ 3328 ServerResponse: googleapi.ServerResponse{ 3329 Header: res.Header, 3330 HTTPStatusCode: res.StatusCode, 3331 }, 3332 } 3333 target := &ret 3334 if err := gensupport.DecodeResponse(target, res); err != nil { 3335 return nil, err 3336 } 3337 return ret, nil 3338 // { 3339 // "description": "Lists each FirebaseProject accessible to the caller.\n\u003cbr\u003e\n\u003cbr\u003eThe elements are returned in no particular order, but they will be a\nconsistent view of the Projects when additional requests are made with a\n`pageToken`.\n\u003cbr\u003e\n\u003cbr\u003eThis method is eventually consistent with Project mutations, which\nmeans newly provisioned Projects and recent modifications to existing\nProjects might not be reflected in the set of Projects. The list will\ninclude only ACTIVE Projects.\n\u003cbr\u003e\n\u003cbr\u003eUse\nGetFirebaseProject\nfor consistent reads as well as for additional Project details.", 3340 // "flatPath": "v1beta1/projects", 3341 // "httpMethod": "GET", 3342 // "id": "firebase.projects.list", 3343 // "parameterOrder": [], 3344 // "parameters": { 3345 // "pageSize": { 3346 // "description": "The maximum number of Projects to return in the response.\n\u003cbr\u003e\n\u003cbr\u003eThe server may return fewer than this at its discretion.\nIf no value is specified (or too large a value is specified), the server\nwill impose its own limit.\n\u003cbr\u003e\n\u003cbr\u003eThis value cannot be negative.", 3347 // "format": "int32", 3348 // "location": "query", 3349 // "type": "integer" 3350 // }, 3351 // "pageToken": { 3352 // "description": "Token returned from a previous call to `ListFirebaseProjects` indicating\nwhere in the set of Projects to resume listing.", 3353 // "location": "query", 3354 // "type": "string" 3355 // } 3356 // }, 3357 // "path": "v1beta1/projects", 3358 // "response": { 3359 // "$ref": "ListFirebaseProjectsResponse" 3360 // }, 3361 // "scopes": [ 3362 // "https://www.googleapis.com/auth/cloud-platform", 3363 // "https://www.googleapis.com/auth/cloud-platform.read-only", 3364 // "https://www.googleapis.com/auth/firebase", 3365 // "https://www.googleapis.com/auth/firebase.readonly" 3366 // ] 3367 // } 3368 3369} 3370 3371// Pages invokes f for each page of results. 3372// A non-nil error returned from f will halt the iteration. 3373// The provided context supersedes any context provided to the Context method. 3374func (c *ProjectsListCall) Pages(ctx context.Context, f func(*ListFirebaseProjectsResponse) error) error { 3375 c.ctx_ = ctx 3376 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 3377 for { 3378 x, err := c.Do() 3379 if err != nil { 3380 return err 3381 } 3382 if err := f(x); err != nil { 3383 return err 3384 } 3385 if x.NextPageToken == "" { 3386 return nil 3387 } 3388 c.PageToken(x.NextPageToken) 3389 } 3390} 3391 3392// method id "firebase.projects.patch": 3393 3394type ProjectsPatchCall struct { 3395 s *Service 3396 name string 3397 firebaseproject *FirebaseProject 3398 urlParams_ gensupport.URLParams 3399 ctx_ context.Context 3400 header_ http.Header 3401} 3402 3403// Patch: Updates the attributes of the FirebaseProject identified by 3404// the 3405// specified resource name. 3406// <br> 3407// <br>All [query parameters](#query-parameters) are required. 3408func (r *ProjectsService) Patch(name string, firebaseproject *FirebaseProject) *ProjectsPatchCall { 3409 c := &ProjectsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3410 c.name = name 3411 c.firebaseproject = firebaseproject 3412 return c 3413} 3414 3415// UpdateMask sets the optional parameter "updateMask": Specifies which 3416// fields to update. 3417// <br> 3418// <br>If this list is empty, then no state will be updated. 3419// <br>Note that the fields `name`, `project_id`, and `project_number` 3420// are all 3421// immutable. 3422func (c *ProjectsPatchCall) UpdateMask(updateMask string) *ProjectsPatchCall { 3423 c.urlParams_.Set("updateMask", updateMask) 3424 return c 3425} 3426 3427// Fields allows partial responses to be retrieved. See 3428// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3429// for more information. 3430func (c *ProjectsPatchCall) Fields(s ...googleapi.Field) *ProjectsPatchCall { 3431 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3432 return c 3433} 3434 3435// Context sets the context to be used in this call's Do method. Any 3436// pending HTTP request will be aborted if the provided context is 3437// canceled. 3438func (c *ProjectsPatchCall) Context(ctx context.Context) *ProjectsPatchCall { 3439 c.ctx_ = ctx 3440 return c 3441} 3442 3443// Header returns an http.Header that can be modified by the caller to 3444// add HTTP headers to the request. 3445func (c *ProjectsPatchCall) Header() http.Header { 3446 if c.header_ == nil { 3447 c.header_ = make(http.Header) 3448 } 3449 return c.header_ 3450} 3451 3452func (c *ProjectsPatchCall) doRequest(alt string) (*http.Response, error) { 3453 reqHeaders := make(http.Header) 3454 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 3455 for k, v := range c.header_ { 3456 reqHeaders[k] = v 3457 } 3458 reqHeaders.Set("User-Agent", c.s.userAgent()) 3459 var body io.Reader = nil 3460 body, err := googleapi.WithoutDataWrapper.JSONReader(c.firebaseproject) 3461 if err != nil { 3462 return nil, err 3463 } 3464 reqHeaders.Set("Content-Type", "application/json") 3465 c.urlParams_.Set("alt", alt) 3466 c.urlParams_.Set("prettyPrint", "false") 3467 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 3468 urls += "?" + c.urlParams_.Encode() 3469 req, err := http.NewRequest("PATCH", urls, body) 3470 if err != nil { 3471 return nil, err 3472 } 3473 req.Header = reqHeaders 3474 googleapi.Expand(req.URL, map[string]string{ 3475 "name": c.name, 3476 }) 3477 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3478} 3479 3480// Do executes the "firebase.projects.patch" call. 3481// Exactly one of *FirebaseProject or error will be non-nil. Any non-2xx 3482// status code is an error. Response headers are in either 3483// *FirebaseProject.ServerResponse.Header or (if a response was returned 3484// at all) in error.(*googleapi.Error).Header. Use 3485// googleapi.IsNotModified to check whether the returned error was 3486// because http.StatusNotModified was returned. 3487func (c *ProjectsPatchCall) Do(opts ...googleapi.CallOption) (*FirebaseProject, error) { 3488 gensupport.SetOptions(c.urlParams_, opts...) 3489 res, err := c.doRequest("json") 3490 if res != nil && res.StatusCode == http.StatusNotModified { 3491 if res.Body != nil { 3492 res.Body.Close() 3493 } 3494 return nil, &googleapi.Error{ 3495 Code: res.StatusCode, 3496 Header: res.Header, 3497 } 3498 } 3499 if err != nil { 3500 return nil, err 3501 } 3502 defer googleapi.CloseBody(res) 3503 if err := googleapi.CheckResponse(res); err != nil { 3504 return nil, err 3505 } 3506 ret := &FirebaseProject{ 3507 ServerResponse: googleapi.ServerResponse{ 3508 Header: res.Header, 3509 HTTPStatusCode: res.StatusCode, 3510 }, 3511 } 3512 target := &ret 3513 if err := gensupport.DecodeResponse(target, res); err != nil { 3514 return nil, err 3515 } 3516 return ret, nil 3517 // { 3518 // "description": "Updates the attributes of the FirebaseProject identified by the\nspecified resource name.\n\u003cbr\u003e\n\u003cbr\u003eAll [query parameters](#query-parameters) are required.", 3519 // "flatPath": "v1beta1/projects/{projectsId}", 3520 // "httpMethod": "PATCH", 3521 // "id": "firebase.projects.patch", 3522 // "parameterOrder": [ 3523 // "name" 3524 // ], 3525 // "parameters": { 3526 // "name": { 3527 // "description": "The fully qualified resource name of the Project, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 3528 // "location": "path", 3529 // "pattern": "^projects/[^/]+$", 3530 // "required": true, 3531 // "type": "string" 3532 // }, 3533 // "updateMask": { 3534 // "description": "Specifies which fields to update.\n\u003cbr\u003e\n\u003cbr\u003eIf this list is empty, then no state will be updated.\n\u003cbr\u003eNote that the fields `name`, `project_id`, and `project_number` are all\nimmutable.", 3535 // "format": "google-fieldmask", 3536 // "location": "query", 3537 // "type": "string" 3538 // } 3539 // }, 3540 // "path": "v1beta1/{+name}", 3541 // "request": { 3542 // "$ref": "FirebaseProject" 3543 // }, 3544 // "response": { 3545 // "$ref": "FirebaseProject" 3546 // }, 3547 // "scopes": [ 3548 // "https://www.googleapis.com/auth/cloud-platform", 3549 // "https://www.googleapis.com/auth/firebase" 3550 // ] 3551 // } 3552 3553} 3554 3555// method id "firebase.projects.removeAnalytics": 3556 3557type ProjectsRemoveAnalyticsCall struct { 3558 s *Service 3559 parent string 3560 removeanalyticsrequest *RemoveAnalyticsRequest 3561 urlParams_ gensupport.URLParams 3562 ctx_ context.Context 3563 header_ http.Header 3564} 3565 3566// RemoveAnalytics: Unlinks the specified `FirebaseProject` from its 3567// Google Analytics account. 3568// <br> 3569// <br>This call removes the association of the specified 3570// `FirebaseProject` 3571// with its current Google Analytics property. However, this call does 3572// not 3573// delete the Google Analytics resources, such as the Google 3574// Analytics 3575// property or any data streams. 3576// <br> 3577// <br>These resources may be re-associated later to the 3578// `FirebaseProject` 3579// by 3580// calling 3581// [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnal 3582// ytics) and 3583// specifying the same `analyticsPropertyId`. For Android Apps and iOS 3584// Apps, 3585// this call re-links data streams with their corresponding apps. 3586// However, 3587// for Web Apps, this call provisions a <em>new</em> data stream for 3588// each Web 3589// App. 3590// <br> 3591// <br>To call `RemoveAnalytics`, a member must be an Owner for 3592// the `FirebaseProject`. 3593func (r *ProjectsService) RemoveAnalytics(parent string, removeanalyticsrequest *RemoveAnalyticsRequest) *ProjectsRemoveAnalyticsCall { 3594 c := &ProjectsRemoveAnalyticsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3595 c.parent = parent 3596 c.removeanalyticsrequest = removeanalyticsrequest 3597 return c 3598} 3599 3600// Fields allows partial responses to be retrieved. See 3601// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3602// for more information. 3603func (c *ProjectsRemoveAnalyticsCall) Fields(s ...googleapi.Field) *ProjectsRemoveAnalyticsCall { 3604 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3605 return c 3606} 3607 3608// Context sets the context to be used in this call's Do method. Any 3609// pending HTTP request will be aborted if the provided context is 3610// canceled. 3611func (c *ProjectsRemoveAnalyticsCall) Context(ctx context.Context) *ProjectsRemoveAnalyticsCall { 3612 c.ctx_ = ctx 3613 return c 3614} 3615 3616// Header returns an http.Header that can be modified by the caller to 3617// add HTTP headers to the request. 3618func (c *ProjectsRemoveAnalyticsCall) Header() http.Header { 3619 if c.header_ == nil { 3620 c.header_ = make(http.Header) 3621 } 3622 return c.header_ 3623} 3624 3625func (c *ProjectsRemoveAnalyticsCall) doRequest(alt string) (*http.Response, error) { 3626 reqHeaders := make(http.Header) 3627 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 3628 for k, v := range c.header_ { 3629 reqHeaders[k] = v 3630 } 3631 reqHeaders.Set("User-Agent", c.s.userAgent()) 3632 var body io.Reader = nil 3633 body, err := googleapi.WithoutDataWrapper.JSONReader(c.removeanalyticsrequest) 3634 if err != nil { 3635 return nil, err 3636 } 3637 reqHeaders.Set("Content-Type", "application/json") 3638 c.urlParams_.Set("alt", alt) 3639 c.urlParams_.Set("prettyPrint", "false") 3640 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}:removeAnalytics") 3641 urls += "?" + c.urlParams_.Encode() 3642 req, err := http.NewRequest("POST", urls, body) 3643 if err != nil { 3644 return nil, err 3645 } 3646 req.Header = reqHeaders 3647 googleapi.Expand(req.URL, map[string]string{ 3648 "parent": c.parent, 3649 }) 3650 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3651} 3652 3653// Do executes the "firebase.projects.removeAnalytics" call. 3654// Exactly one of *Empty or error will be non-nil. Any non-2xx status 3655// code is an error. Response headers are in either 3656// *Empty.ServerResponse.Header or (if a response was returned at all) 3657// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 3658// check whether the returned error was because http.StatusNotModified 3659// was returned. 3660func (c *ProjectsRemoveAnalyticsCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 3661 gensupport.SetOptions(c.urlParams_, opts...) 3662 res, err := c.doRequest("json") 3663 if res != nil && res.StatusCode == http.StatusNotModified { 3664 if res.Body != nil { 3665 res.Body.Close() 3666 } 3667 return nil, &googleapi.Error{ 3668 Code: res.StatusCode, 3669 Header: res.Header, 3670 } 3671 } 3672 if err != nil { 3673 return nil, err 3674 } 3675 defer googleapi.CloseBody(res) 3676 if err := googleapi.CheckResponse(res); err != nil { 3677 return nil, err 3678 } 3679 ret := &Empty{ 3680 ServerResponse: googleapi.ServerResponse{ 3681 Header: res.Header, 3682 HTTPStatusCode: res.StatusCode, 3683 }, 3684 } 3685 target := &ret 3686 if err := gensupport.DecodeResponse(target, res); err != nil { 3687 return nil, err 3688 } 3689 return ret, nil 3690 // { 3691 // "description": "Unlinks the specified `FirebaseProject` from its Google Analytics account.\n\u003cbr\u003e\n\u003cbr\u003eThis call removes the association of the specified `FirebaseProject`\nwith its current Google Analytics property. However, this call does not\ndelete the Google Analytics resources, such as the Google Analytics\nproperty or any data streams.\n\u003cbr\u003e\n\u003cbr\u003eThese resources may be re-associated later to the `FirebaseProject` by\ncalling\n[`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytics) and\nspecifying the same `analyticsPropertyId`. For Android Apps and iOS Apps,\nthis call re-links data streams with their corresponding apps. However,\nfor Web Apps, this call provisions a \u003cem\u003enew\u003c/em\u003e data stream for each Web\nApp.\n\u003cbr\u003e\n\u003cbr\u003eTo call `RemoveAnalytics`, a member must be an Owner for\nthe `FirebaseProject`.", 3692 // "flatPath": "v1beta1/projects/{projectsId}:removeAnalytics", 3693 // "httpMethod": "POST", 3694 // "id": "firebase.projects.removeAnalytics", 3695 // "parameterOrder": [ 3696 // "parent" 3697 // ], 3698 // "parameters": { 3699 // "parent": { 3700 // "description": "The parent `FirebaseProject` to unlink from its Google Analytics account,\nin the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 3701 // "location": "path", 3702 // "pattern": "^projects/[^/]+$", 3703 // "required": true, 3704 // "type": "string" 3705 // } 3706 // }, 3707 // "path": "v1beta1/{+parent}:removeAnalytics", 3708 // "request": { 3709 // "$ref": "RemoveAnalyticsRequest" 3710 // }, 3711 // "response": { 3712 // "$ref": "Empty" 3713 // }, 3714 // "scopes": [ 3715 // "https://www.googleapis.com/auth/cloud-platform" 3716 // ] 3717 // } 3718 3719} 3720 3721// method id "firebase.projects.searchApps": 3722 3723type ProjectsSearchAppsCall struct { 3724 s *Service 3725 parent string 3726 urlParams_ gensupport.URLParams 3727 ifNoneMatch_ string 3728 ctx_ context.Context 3729 header_ http.Header 3730} 3731 3732// SearchApps: A convenience method that lists all available Apps for 3733// the specified 3734// FirebaseProject. 3735// <br> 3736// <br>Typically, interaction with an App should be done using 3737// the 3738// platform-specific service, but some tool use-cases require a summary 3739// of all 3740// known Apps (such as for App selector interfaces). 3741func (r *ProjectsService) SearchApps(parent string) *ProjectsSearchAppsCall { 3742 c := &ProjectsSearchAppsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3743 c.parent = parent 3744 return c 3745} 3746 3747// PageSize sets the optional parameter "pageSize": The maximum number 3748// of Apps to return in the response. 3749// <br> 3750// <br>The server may return fewer than this value at its discretion. 3751// If no value is specified (or too large a value is specified), then 3752// the 3753// server will impose its own limit. 3754// <br> 3755// <br>This value cannot be negative. 3756func (c *ProjectsSearchAppsCall) PageSize(pageSize int64) *ProjectsSearchAppsCall { 3757 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 3758 return c 3759} 3760 3761// PageToken sets the optional parameter "pageToken": Token returned 3762// from a previous call to `SearchFirebaseApps` indicating 3763// where in the set of Apps to resume listing. 3764func (c *ProjectsSearchAppsCall) PageToken(pageToken string) *ProjectsSearchAppsCall { 3765 c.urlParams_.Set("pageToken", pageToken) 3766 return c 3767} 3768 3769// Fields allows partial responses to be retrieved. See 3770// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3771// for more information. 3772func (c *ProjectsSearchAppsCall) Fields(s ...googleapi.Field) *ProjectsSearchAppsCall { 3773 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3774 return c 3775} 3776 3777// IfNoneMatch sets the optional parameter which makes the operation 3778// fail if the object's ETag matches the given value. This is useful for 3779// getting updates only after the object has changed since the last 3780// request. Use googleapi.IsNotModified to check whether the response 3781// error from Do is the result of In-None-Match. 3782func (c *ProjectsSearchAppsCall) IfNoneMatch(entityTag string) *ProjectsSearchAppsCall { 3783 c.ifNoneMatch_ = entityTag 3784 return c 3785} 3786 3787// Context sets the context to be used in this call's Do method. Any 3788// pending HTTP request will be aborted if the provided context is 3789// canceled. 3790func (c *ProjectsSearchAppsCall) Context(ctx context.Context) *ProjectsSearchAppsCall { 3791 c.ctx_ = ctx 3792 return c 3793} 3794 3795// Header returns an http.Header that can be modified by the caller to 3796// add HTTP headers to the request. 3797func (c *ProjectsSearchAppsCall) Header() http.Header { 3798 if c.header_ == nil { 3799 c.header_ = make(http.Header) 3800 } 3801 return c.header_ 3802} 3803 3804func (c *ProjectsSearchAppsCall) doRequest(alt string) (*http.Response, error) { 3805 reqHeaders := make(http.Header) 3806 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 3807 for k, v := range c.header_ { 3808 reqHeaders[k] = v 3809 } 3810 reqHeaders.Set("User-Agent", c.s.userAgent()) 3811 if c.ifNoneMatch_ != "" { 3812 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 3813 } 3814 var body io.Reader = nil 3815 c.urlParams_.Set("alt", alt) 3816 c.urlParams_.Set("prettyPrint", "false") 3817 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}:searchApps") 3818 urls += "?" + c.urlParams_.Encode() 3819 req, err := http.NewRequest("GET", urls, body) 3820 if err != nil { 3821 return nil, err 3822 } 3823 req.Header = reqHeaders 3824 googleapi.Expand(req.URL, map[string]string{ 3825 "parent": c.parent, 3826 }) 3827 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3828} 3829 3830// Do executes the "firebase.projects.searchApps" call. 3831// Exactly one of *SearchFirebaseAppsResponse or error will be non-nil. 3832// Any non-2xx status code is an error. Response headers are in either 3833// *SearchFirebaseAppsResponse.ServerResponse.Header or (if a response 3834// was returned at all) in error.(*googleapi.Error).Header. Use 3835// googleapi.IsNotModified to check whether the returned error was 3836// because http.StatusNotModified was returned. 3837func (c *ProjectsSearchAppsCall) Do(opts ...googleapi.CallOption) (*SearchFirebaseAppsResponse, error) { 3838 gensupport.SetOptions(c.urlParams_, opts...) 3839 res, err := c.doRequest("json") 3840 if res != nil && res.StatusCode == http.StatusNotModified { 3841 if res.Body != nil { 3842 res.Body.Close() 3843 } 3844 return nil, &googleapi.Error{ 3845 Code: res.StatusCode, 3846 Header: res.Header, 3847 } 3848 } 3849 if err != nil { 3850 return nil, err 3851 } 3852 defer googleapi.CloseBody(res) 3853 if err := googleapi.CheckResponse(res); err != nil { 3854 return nil, err 3855 } 3856 ret := &SearchFirebaseAppsResponse{ 3857 ServerResponse: googleapi.ServerResponse{ 3858 Header: res.Header, 3859 HTTPStatusCode: res.StatusCode, 3860 }, 3861 } 3862 target := &ret 3863 if err := gensupport.DecodeResponse(target, res); err != nil { 3864 return nil, err 3865 } 3866 return ret, nil 3867 // { 3868 // "description": "A convenience method that lists all available Apps for the specified\nFirebaseProject.\n\u003cbr\u003e\n\u003cbr\u003eTypically, interaction with an App should be done using the\nplatform-specific service, but some tool use-cases require a summary of all\nknown Apps (such as for App selector interfaces).", 3869 // "flatPath": "v1beta1/projects/{projectsId}:searchApps", 3870 // "httpMethod": "GET", 3871 // "id": "firebase.projects.searchApps", 3872 // "parameterOrder": [ 3873 // "parent" 3874 // ], 3875 // "parameters": { 3876 // "pageSize": { 3877 // "description": "The maximum number of Apps to return in the response.\n\u003cbr\u003e\n\u003cbr\u003eThe server may return fewer than this value at its discretion.\nIf no value is specified (or too large a value is specified), then the\nserver will impose its own limit.\n\u003cbr\u003e\n\u003cbr\u003eThis value cannot be negative.", 3878 // "format": "int32", 3879 // "location": "query", 3880 // "type": "integer" 3881 // }, 3882 // "pageToken": { 3883 // "description": "Token returned from a previous call to `SearchFirebaseApps` indicating\nwhere in the set of Apps to resume listing.", 3884 // "location": "query", 3885 // "type": "string" 3886 // }, 3887 // "parent": { 3888 // "description": "The parent Project for which to list Apps, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 3889 // "location": "path", 3890 // "pattern": "^projects/[^/]+$", 3891 // "required": true, 3892 // "type": "string" 3893 // } 3894 // }, 3895 // "path": "v1beta1/{+parent}:searchApps", 3896 // "response": { 3897 // "$ref": "SearchFirebaseAppsResponse" 3898 // }, 3899 // "scopes": [ 3900 // "https://www.googleapis.com/auth/cloud-platform", 3901 // "https://www.googleapis.com/auth/cloud-platform.read-only", 3902 // "https://www.googleapis.com/auth/firebase", 3903 // "https://www.googleapis.com/auth/firebase.readonly" 3904 // ] 3905 // } 3906 3907} 3908 3909// Pages invokes f for each page of results. 3910// A non-nil error returned from f will halt the iteration. 3911// The provided context supersedes any context provided to the Context method. 3912func (c *ProjectsSearchAppsCall) Pages(ctx context.Context, f func(*SearchFirebaseAppsResponse) error) error { 3913 c.ctx_ = ctx 3914 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 3915 for { 3916 x, err := c.Do() 3917 if err != nil { 3918 return err 3919 } 3920 if err := f(x); err != nil { 3921 return err 3922 } 3923 if x.NextPageToken == "" { 3924 return nil 3925 } 3926 c.PageToken(x.NextPageToken) 3927 } 3928} 3929 3930// method id "firebase.projects.androidApps.create": 3931 3932type ProjectsAndroidAppsCreateCall struct { 3933 s *Service 3934 parent string 3935 androidapp *AndroidApp 3936 urlParams_ gensupport.URLParams 3937 ctx_ context.Context 3938 header_ http.Header 3939} 3940 3941// Create: Requests that a new AndroidApp be created. 3942// <br> 3943// <br>The result of this call is an `Operation` which can be used to 3944// track 3945// the provisioning process. The `Operation` is automatically deleted 3946// after 3947// completion, so there is no need to call `DeleteOperation`. 3948func (r *ProjectsAndroidAppsService) Create(parent string, androidapp *AndroidApp) *ProjectsAndroidAppsCreateCall { 3949 c := &ProjectsAndroidAppsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3950 c.parent = parent 3951 c.androidapp = androidapp 3952 return c 3953} 3954 3955// Fields allows partial responses to be retrieved. See 3956// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3957// for more information. 3958func (c *ProjectsAndroidAppsCreateCall) Fields(s ...googleapi.Field) *ProjectsAndroidAppsCreateCall { 3959 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3960 return c 3961} 3962 3963// Context sets the context to be used in this call's Do method. Any 3964// pending HTTP request will be aborted if the provided context is 3965// canceled. 3966func (c *ProjectsAndroidAppsCreateCall) Context(ctx context.Context) *ProjectsAndroidAppsCreateCall { 3967 c.ctx_ = ctx 3968 return c 3969} 3970 3971// Header returns an http.Header that can be modified by the caller to 3972// add HTTP headers to the request. 3973func (c *ProjectsAndroidAppsCreateCall) Header() http.Header { 3974 if c.header_ == nil { 3975 c.header_ = make(http.Header) 3976 } 3977 return c.header_ 3978} 3979 3980func (c *ProjectsAndroidAppsCreateCall) doRequest(alt string) (*http.Response, error) { 3981 reqHeaders := make(http.Header) 3982 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 3983 for k, v := range c.header_ { 3984 reqHeaders[k] = v 3985 } 3986 reqHeaders.Set("User-Agent", c.s.userAgent()) 3987 var body io.Reader = nil 3988 body, err := googleapi.WithoutDataWrapper.JSONReader(c.androidapp) 3989 if err != nil { 3990 return nil, err 3991 } 3992 reqHeaders.Set("Content-Type", "application/json") 3993 c.urlParams_.Set("alt", alt) 3994 c.urlParams_.Set("prettyPrint", "false") 3995 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/androidApps") 3996 urls += "?" + c.urlParams_.Encode() 3997 req, err := http.NewRequest("POST", urls, body) 3998 if err != nil { 3999 return nil, err 4000 } 4001 req.Header = reqHeaders 4002 googleapi.Expand(req.URL, map[string]string{ 4003 "parent": c.parent, 4004 }) 4005 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4006} 4007 4008// Do executes the "firebase.projects.androidApps.create" call. 4009// Exactly one of *Operation or error will be non-nil. Any non-2xx 4010// status code is an error. Response headers are in either 4011// *Operation.ServerResponse.Header or (if a response was returned at 4012// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 4013// to check whether the returned error was because 4014// http.StatusNotModified was returned. 4015func (c *ProjectsAndroidAppsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 4016 gensupport.SetOptions(c.urlParams_, opts...) 4017 res, err := c.doRequest("json") 4018 if res != nil && res.StatusCode == http.StatusNotModified { 4019 if res.Body != nil { 4020 res.Body.Close() 4021 } 4022 return nil, &googleapi.Error{ 4023 Code: res.StatusCode, 4024 Header: res.Header, 4025 } 4026 } 4027 if err != nil { 4028 return nil, err 4029 } 4030 defer googleapi.CloseBody(res) 4031 if err := googleapi.CheckResponse(res); err != nil { 4032 return nil, err 4033 } 4034 ret := &Operation{ 4035 ServerResponse: googleapi.ServerResponse{ 4036 Header: res.Header, 4037 HTTPStatusCode: res.StatusCode, 4038 }, 4039 } 4040 target := &ret 4041 if err := gensupport.DecodeResponse(target, res); err != nil { 4042 return nil, err 4043 } 4044 return ret, nil 4045 // { 4046 // "description": "Requests that a new AndroidApp be created.\n\u003cbr\u003e\n\u003cbr\u003eThe result of this call is an `Operation` which can be used to track\nthe provisioning process. The `Operation` is automatically deleted after\ncompletion, so there is no need to call `DeleteOperation`.", 4047 // "flatPath": "v1beta1/projects/{projectsId}/androidApps", 4048 // "httpMethod": "POST", 4049 // "id": "firebase.projects.androidApps.create", 4050 // "parameterOrder": [ 4051 // "parent" 4052 // ], 4053 // "parameters": { 4054 // "parent": { 4055 // "description": "The parent Project for which to list Apps, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 4056 // "location": "path", 4057 // "pattern": "^projects/[^/]+$", 4058 // "required": true, 4059 // "type": "string" 4060 // } 4061 // }, 4062 // "path": "v1beta1/{+parent}/androidApps", 4063 // "request": { 4064 // "$ref": "AndroidApp" 4065 // }, 4066 // "response": { 4067 // "$ref": "Operation" 4068 // }, 4069 // "scopes": [ 4070 // "https://www.googleapis.com/auth/cloud-platform", 4071 // "https://www.googleapis.com/auth/firebase" 4072 // ] 4073 // } 4074 4075} 4076 4077// method id "firebase.projects.androidApps.get": 4078 4079type ProjectsAndroidAppsGetCall struct { 4080 s *Service 4081 nameid string 4082 urlParams_ gensupport.URLParams 4083 ifNoneMatch_ string 4084 ctx_ context.Context 4085 header_ http.Header 4086} 4087 4088// Get: Gets the AndroidApp identified by the specified resource name. 4089func (r *ProjectsAndroidAppsService) Get(nameid string) *ProjectsAndroidAppsGetCall { 4090 c := &ProjectsAndroidAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4091 c.nameid = nameid 4092 return c 4093} 4094 4095// Fields allows partial responses to be retrieved. See 4096// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4097// for more information. 4098func (c *ProjectsAndroidAppsGetCall) Fields(s ...googleapi.Field) *ProjectsAndroidAppsGetCall { 4099 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4100 return c 4101} 4102 4103// IfNoneMatch sets the optional parameter which makes the operation 4104// fail if the object's ETag matches the given value. This is useful for 4105// getting updates only after the object has changed since the last 4106// request. Use googleapi.IsNotModified to check whether the response 4107// error from Do is the result of In-None-Match. 4108func (c *ProjectsAndroidAppsGetCall) IfNoneMatch(entityTag string) *ProjectsAndroidAppsGetCall { 4109 c.ifNoneMatch_ = entityTag 4110 return c 4111} 4112 4113// Context sets the context to be used in this call's Do method. Any 4114// pending HTTP request will be aborted if the provided context is 4115// canceled. 4116func (c *ProjectsAndroidAppsGetCall) Context(ctx context.Context) *ProjectsAndroidAppsGetCall { 4117 c.ctx_ = ctx 4118 return c 4119} 4120 4121// Header returns an http.Header that can be modified by the caller to 4122// add HTTP headers to the request. 4123func (c *ProjectsAndroidAppsGetCall) Header() http.Header { 4124 if c.header_ == nil { 4125 c.header_ = make(http.Header) 4126 } 4127 return c.header_ 4128} 4129 4130func (c *ProjectsAndroidAppsGetCall) doRequest(alt string) (*http.Response, error) { 4131 reqHeaders := make(http.Header) 4132 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 4133 for k, v := range c.header_ { 4134 reqHeaders[k] = v 4135 } 4136 reqHeaders.Set("User-Agent", c.s.userAgent()) 4137 if c.ifNoneMatch_ != "" { 4138 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 4139 } 4140 var body io.Reader = nil 4141 c.urlParams_.Set("alt", alt) 4142 c.urlParams_.Set("prettyPrint", "false") 4143 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 4144 urls += "?" + c.urlParams_.Encode() 4145 req, err := http.NewRequest("GET", urls, body) 4146 if err != nil { 4147 return nil, err 4148 } 4149 req.Header = reqHeaders 4150 googleapi.Expand(req.URL, map[string]string{ 4151 "name": c.nameid, 4152 }) 4153 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4154} 4155 4156// Do executes the "firebase.projects.androidApps.get" call. 4157// Exactly one of *AndroidApp or error will be non-nil. Any non-2xx 4158// status code is an error. Response headers are in either 4159// *AndroidApp.ServerResponse.Header or (if a response was returned at 4160// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 4161// to check whether the returned error was because 4162// http.StatusNotModified was returned. 4163func (c *ProjectsAndroidAppsGetCall) Do(opts ...googleapi.CallOption) (*AndroidApp, error) { 4164 gensupport.SetOptions(c.urlParams_, opts...) 4165 res, err := c.doRequest("json") 4166 if res != nil && res.StatusCode == http.StatusNotModified { 4167 if res.Body != nil { 4168 res.Body.Close() 4169 } 4170 return nil, &googleapi.Error{ 4171 Code: res.StatusCode, 4172 Header: res.Header, 4173 } 4174 } 4175 if err != nil { 4176 return nil, err 4177 } 4178 defer googleapi.CloseBody(res) 4179 if err := googleapi.CheckResponse(res); err != nil { 4180 return nil, err 4181 } 4182 ret := &AndroidApp{ 4183 ServerResponse: googleapi.ServerResponse{ 4184 Header: res.Header, 4185 HTTPStatusCode: res.StatusCode, 4186 }, 4187 } 4188 target := &ret 4189 if err := gensupport.DecodeResponse(target, res); err != nil { 4190 return nil, err 4191 } 4192 return ret, nil 4193 // { 4194 // "description": "Gets the AndroidApp identified by the specified resource name.", 4195 // "flatPath": "v1beta1/projects/{projectsId}/androidApps/{androidAppsId}", 4196 // "httpMethod": "GET", 4197 // "id": "firebase.projects.androidApps.get", 4198 // "parameterOrder": [ 4199 // "name" 4200 // ], 4201 // "parameters": { 4202 // "name": { 4203 // "description": "The fully qualified resource name of the App, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/androidApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e\n\u003cbr\u003eAs an \u003cvar\u003eappId\u003c/var\u003e is a unique identifier, the Unique Resource\nfrom Sub-Collection access pattern may be used here, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/-/androidApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 4204 // "location": "path", 4205 // "pattern": "^projects/[^/]+/androidApps/[^/]+$", 4206 // "required": true, 4207 // "type": "string" 4208 // } 4209 // }, 4210 // "path": "v1beta1/{+name}", 4211 // "response": { 4212 // "$ref": "AndroidApp" 4213 // }, 4214 // "scopes": [ 4215 // "https://www.googleapis.com/auth/cloud-platform", 4216 // "https://www.googleapis.com/auth/cloud-platform.read-only", 4217 // "https://www.googleapis.com/auth/firebase", 4218 // "https://www.googleapis.com/auth/firebase.readonly" 4219 // ] 4220 // } 4221 4222} 4223 4224// method id "firebase.projects.androidApps.getConfig": 4225 4226type ProjectsAndroidAppsGetConfigCall struct { 4227 s *Service 4228 nameid string 4229 urlParams_ gensupport.URLParams 4230 ifNoneMatch_ string 4231 ctx_ context.Context 4232 header_ http.Header 4233} 4234 4235// GetConfig: Gets the configuration artifact associated with the 4236// specified 4237// AndroidApp. 4238func (r *ProjectsAndroidAppsService) GetConfig(nameid string) *ProjectsAndroidAppsGetConfigCall { 4239 c := &ProjectsAndroidAppsGetConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4240 c.nameid = nameid 4241 return c 4242} 4243 4244// Fields allows partial responses to be retrieved. See 4245// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4246// for more information. 4247func (c *ProjectsAndroidAppsGetConfigCall) Fields(s ...googleapi.Field) *ProjectsAndroidAppsGetConfigCall { 4248 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4249 return c 4250} 4251 4252// IfNoneMatch sets the optional parameter which makes the operation 4253// fail if the object's ETag matches the given value. This is useful for 4254// getting updates only after the object has changed since the last 4255// request. Use googleapi.IsNotModified to check whether the response 4256// error from Do is the result of In-None-Match. 4257func (c *ProjectsAndroidAppsGetConfigCall) IfNoneMatch(entityTag string) *ProjectsAndroidAppsGetConfigCall { 4258 c.ifNoneMatch_ = entityTag 4259 return c 4260} 4261 4262// Context sets the context to be used in this call's Do method. Any 4263// pending HTTP request will be aborted if the provided context is 4264// canceled. 4265func (c *ProjectsAndroidAppsGetConfigCall) Context(ctx context.Context) *ProjectsAndroidAppsGetConfigCall { 4266 c.ctx_ = ctx 4267 return c 4268} 4269 4270// Header returns an http.Header that can be modified by the caller to 4271// add HTTP headers to the request. 4272func (c *ProjectsAndroidAppsGetConfigCall) Header() http.Header { 4273 if c.header_ == nil { 4274 c.header_ = make(http.Header) 4275 } 4276 return c.header_ 4277} 4278 4279func (c *ProjectsAndroidAppsGetConfigCall) doRequest(alt string) (*http.Response, error) { 4280 reqHeaders := make(http.Header) 4281 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 4282 for k, v := range c.header_ { 4283 reqHeaders[k] = v 4284 } 4285 reqHeaders.Set("User-Agent", c.s.userAgent()) 4286 if c.ifNoneMatch_ != "" { 4287 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 4288 } 4289 var body io.Reader = nil 4290 c.urlParams_.Set("alt", alt) 4291 c.urlParams_.Set("prettyPrint", "false") 4292 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 4293 urls += "?" + c.urlParams_.Encode() 4294 req, err := http.NewRequest("GET", urls, body) 4295 if err != nil { 4296 return nil, err 4297 } 4298 req.Header = reqHeaders 4299 googleapi.Expand(req.URL, map[string]string{ 4300 "name": c.nameid, 4301 }) 4302 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4303} 4304 4305// Do executes the "firebase.projects.androidApps.getConfig" call. 4306// Exactly one of *AndroidAppConfig or error will be non-nil. Any 4307// non-2xx status code is an error. Response headers are in either 4308// *AndroidAppConfig.ServerResponse.Header or (if a response was 4309// returned at all) in error.(*googleapi.Error).Header. Use 4310// googleapi.IsNotModified to check whether the returned error was 4311// because http.StatusNotModified was returned. 4312func (c *ProjectsAndroidAppsGetConfigCall) Do(opts ...googleapi.CallOption) (*AndroidAppConfig, error) { 4313 gensupport.SetOptions(c.urlParams_, opts...) 4314 res, err := c.doRequest("json") 4315 if res != nil && res.StatusCode == http.StatusNotModified { 4316 if res.Body != nil { 4317 res.Body.Close() 4318 } 4319 return nil, &googleapi.Error{ 4320 Code: res.StatusCode, 4321 Header: res.Header, 4322 } 4323 } 4324 if err != nil { 4325 return nil, err 4326 } 4327 defer googleapi.CloseBody(res) 4328 if err := googleapi.CheckResponse(res); err != nil { 4329 return nil, err 4330 } 4331 ret := &AndroidAppConfig{ 4332 ServerResponse: googleapi.ServerResponse{ 4333 Header: res.Header, 4334 HTTPStatusCode: res.StatusCode, 4335 }, 4336 } 4337 target := &ret 4338 if err := gensupport.DecodeResponse(target, res); err != nil { 4339 return nil, err 4340 } 4341 return ret, nil 4342 // { 4343 // "description": "Gets the configuration artifact associated with the specified\nAndroidApp.", 4344 // "flatPath": "v1beta1/projects/{projectsId}/androidApps/{androidAppsId}/config", 4345 // "httpMethod": "GET", 4346 // "id": "firebase.projects.androidApps.getConfig", 4347 // "parameterOrder": [ 4348 // "name" 4349 // ], 4350 // "parameters": { 4351 // "name": { 4352 // "description": "The resource name of the App configuration to download, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/androidApps/\u003cvar\u003eappId\u003c/var\u003e/config\u003c/code\u003e\n\u003cbr\u003eAs an \u003cvar\u003eappId\u003c/var\u003e is a unique identifier, the Unique Resource\nfrom Sub-Collection access pattern may be used here, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/-/androidApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 4353 // "location": "path", 4354 // "pattern": "^projects/[^/]+/androidApps/[^/]+/config$", 4355 // "required": true, 4356 // "type": "string" 4357 // } 4358 // }, 4359 // "path": "v1beta1/{+name}", 4360 // "response": { 4361 // "$ref": "AndroidAppConfig" 4362 // }, 4363 // "scopes": [ 4364 // "https://www.googleapis.com/auth/cloud-platform" 4365 // ] 4366 // } 4367 4368} 4369 4370// method id "firebase.projects.androidApps.list": 4371 4372type ProjectsAndroidAppsListCall struct { 4373 s *Service 4374 parent string 4375 urlParams_ gensupport.URLParams 4376 ifNoneMatch_ string 4377 ctx_ context.Context 4378 header_ http.Header 4379} 4380 4381// List: Lists each AndroidApp associated with the specified parent 4382// Project. 4383// <br> 4384// <br>The elements are returned in no particular order, but will be 4385// a 4386// consistent view of the Apps when additional requests are made with 4387// a 4388// `pageToken`. 4389func (r *ProjectsAndroidAppsService) List(parent string) *ProjectsAndroidAppsListCall { 4390 c := &ProjectsAndroidAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4391 c.parent = parent 4392 return c 4393} 4394 4395// PageSize sets the optional parameter "pageSize": The maximum number 4396// of Apps to return in the response. 4397// <br> 4398// <br>The server may return fewer than this at its discretion. 4399// If no value is specified (or too large a value is specified), then 4400// the 4401// server will impose its own limit. 4402func (c *ProjectsAndroidAppsListCall) PageSize(pageSize int64) *ProjectsAndroidAppsListCall { 4403 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 4404 return c 4405} 4406 4407// PageToken sets the optional parameter "pageToken": Token returned 4408// from a previous call to `ListAndroidApps` indicating where 4409// in the set of Apps to resume listing. 4410func (c *ProjectsAndroidAppsListCall) PageToken(pageToken string) *ProjectsAndroidAppsListCall { 4411 c.urlParams_.Set("pageToken", pageToken) 4412 return c 4413} 4414 4415// Fields allows partial responses to be retrieved. See 4416// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4417// for more information. 4418func (c *ProjectsAndroidAppsListCall) Fields(s ...googleapi.Field) *ProjectsAndroidAppsListCall { 4419 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4420 return c 4421} 4422 4423// IfNoneMatch sets the optional parameter which makes the operation 4424// fail if the object's ETag matches the given value. This is useful for 4425// getting updates only after the object has changed since the last 4426// request. Use googleapi.IsNotModified to check whether the response 4427// error from Do is the result of In-None-Match. 4428func (c *ProjectsAndroidAppsListCall) IfNoneMatch(entityTag string) *ProjectsAndroidAppsListCall { 4429 c.ifNoneMatch_ = entityTag 4430 return c 4431} 4432 4433// Context sets the context to be used in this call's Do method. Any 4434// pending HTTP request will be aborted if the provided context is 4435// canceled. 4436func (c *ProjectsAndroidAppsListCall) Context(ctx context.Context) *ProjectsAndroidAppsListCall { 4437 c.ctx_ = ctx 4438 return c 4439} 4440 4441// Header returns an http.Header that can be modified by the caller to 4442// add HTTP headers to the request. 4443func (c *ProjectsAndroidAppsListCall) Header() http.Header { 4444 if c.header_ == nil { 4445 c.header_ = make(http.Header) 4446 } 4447 return c.header_ 4448} 4449 4450func (c *ProjectsAndroidAppsListCall) doRequest(alt string) (*http.Response, error) { 4451 reqHeaders := make(http.Header) 4452 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 4453 for k, v := range c.header_ { 4454 reqHeaders[k] = v 4455 } 4456 reqHeaders.Set("User-Agent", c.s.userAgent()) 4457 if c.ifNoneMatch_ != "" { 4458 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 4459 } 4460 var body io.Reader = nil 4461 c.urlParams_.Set("alt", alt) 4462 c.urlParams_.Set("prettyPrint", "false") 4463 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/androidApps") 4464 urls += "?" + c.urlParams_.Encode() 4465 req, err := http.NewRequest("GET", urls, body) 4466 if err != nil { 4467 return nil, err 4468 } 4469 req.Header = reqHeaders 4470 googleapi.Expand(req.URL, map[string]string{ 4471 "parent": c.parent, 4472 }) 4473 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4474} 4475 4476// Do executes the "firebase.projects.androidApps.list" call. 4477// Exactly one of *ListAndroidAppsResponse or error will be non-nil. Any 4478// non-2xx status code is an error. Response headers are in either 4479// *ListAndroidAppsResponse.ServerResponse.Header or (if a response was 4480// returned at all) in error.(*googleapi.Error).Header. Use 4481// googleapi.IsNotModified to check whether the returned error was 4482// because http.StatusNotModified was returned. 4483func (c *ProjectsAndroidAppsListCall) Do(opts ...googleapi.CallOption) (*ListAndroidAppsResponse, error) { 4484 gensupport.SetOptions(c.urlParams_, opts...) 4485 res, err := c.doRequest("json") 4486 if res != nil && res.StatusCode == http.StatusNotModified { 4487 if res.Body != nil { 4488 res.Body.Close() 4489 } 4490 return nil, &googleapi.Error{ 4491 Code: res.StatusCode, 4492 Header: res.Header, 4493 } 4494 } 4495 if err != nil { 4496 return nil, err 4497 } 4498 defer googleapi.CloseBody(res) 4499 if err := googleapi.CheckResponse(res); err != nil { 4500 return nil, err 4501 } 4502 ret := &ListAndroidAppsResponse{ 4503 ServerResponse: googleapi.ServerResponse{ 4504 Header: res.Header, 4505 HTTPStatusCode: res.StatusCode, 4506 }, 4507 } 4508 target := &ret 4509 if err := gensupport.DecodeResponse(target, res); err != nil { 4510 return nil, err 4511 } 4512 return ret, nil 4513 // { 4514 // "description": "Lists each AndroidApp associated with the specified parent Project.\n\u003cbr\u003e\n\u003cbr\u003eThe elements are returned in no particular order, but will be a\nconsistent view of the Apps when additional requests are made with a\n`pageToken`.", 4515 // "flatPath": "v1beta1/projects/{projectsId}/androidApps", 4516 // "httpMethod": "GET", 4517 // "id": "firebase.projects.androidApps.list", 4518 // "parameterOrder": [ 4519 // "parent" 4520 // ], 4521 // "parameters": { 4522 // "pageSize": { 4523 // "description": "The maximum number of Apps to return in the response.\n\u003cbr\u003e\n\u003cbr\u003eThe server may return fewer than this at its discretion.\nIf no value is specified (or too large a value is specified), then the\nserver will impose its own limit.", 4524 // "format": "int32", 4525 // "location": "query", 4526 // "type": "integer" 4527 // }, 4528 // "pageToken": { 4529 // "description": "Token returned from a previous call to `ListAndroidApps` indicating where\nin the set of Apps to resume listing.", 4530 // "location": "query", 4531 // "type": "string" 4532 // }, 4533 // "parent": { 4534 // "description": "The parent Project for which to list Apps, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 4535 // "location": "path", 4536 // "pattern": "^projects/[^/]+$", 4537 // "required": true, 4538 // "type": "string" 4539 // } 4540 // }, 4541 // "path": "v1beta1/{+parent}/androidApps", 4542 // "response": { 4543 // "$ref": "ListAndroidAppsResponse" 4544 // }, 4545 // "scopes": [ 4546 // "https://www.googleapis.com/auth/cloud-platform", 4547 // "https://www.googleapis.com/auth/cloud-platform.read-only", 4548 // "https://www.googleapis.com/auth/firebase", 4549 // "https://www.googleapis.com/auth/firebase.readonly" 4550 // ] 4551 // } 4552 4553} 4554 4555// Pages invokes f for each page of results. 4556// A non-nil error returned from f will halt the iteration. 4557// The provided context supersedes any context provided to the Context method. 4558func (c *ProjectsAndroidAppsListCall) Pages(ctx context.Context, f func(*ListAndroidAppsResponse) error) error { 4559 c.ctx_ = ctx 4560 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 4561 for { 4562 x, err := c.Do() 4563 if err != nil { 4564 return err 4565 } 4566 if err := f(x); err != nil { 4567 return err 4568 } 4569 if x.NextPageToken == "" { 4570 return nil 4571 } 4572 c.PageToken(x.NextPageToken) 4573 } 4574} 4575 4576// method id "firebase.projects.androidApps.patch": 4577 4578type ProjectsAndroidAppsPatchCall struct { 4579 s *Service 4580 name string 4581 androidapp *AndroidApp 4582 urlParams_ gensupport.URLParams 4583 ctx_ context.Context 4584 header_ http.Header 4585} 4586 4587// Patch: Updates the attributes of the AndroidApp identified by the 4588// specified 4589// resource name. 4590func (r *ProjectsAndroidAppsService) Patch(name string, androidapp *AndroidApp) *ProjectsAndroidAppsPatchCall { 4591 c := &ProjectsAndroidAppsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4592 c.name = name 4593 c.androidapp = androidapp 4594 return c 4595} 4596 4597// UpdateMask sets the optional parameter "updateMask": Specifies which 4598// fields to update. 4599// <br>Note that the fields `name`, `appId`, `projectId`, and 4600// `packageName` 4601// are all immutable. 4602func (c *ProjectsAndroidAppsPatchCall) UpdateMask(updateMask string) *ProjectsAndroidAppsPatchCall { 4603 c.urlParams_.Set("updateMask", updateMask) 4604 return c 4605} 4606 4607// Fields allows partial responses to be retrieved. See 4608// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4609// for more information. 4610func (c *ProjectsAndroidAppsPatchCall) Fields(s ...googleapi.Field) *ProjectsAndroidAppsPatchCall { 4611 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4612 return c 4613} 4614 4615// Context sets the context to be used in this call's Do method. Any 4616// pending HTTP request will be aborted if the provided context is 4617// canceled. 4618func (c *ProjectsAndroidAppsPatchCall) Context(ctx context.Context) *ProjectsAndroidAppsPatchCall { 4619 c.ctx_ = ctx 4620 return c 4621} 4622 4623// Header returns an http.Header that can be modified by the caller to 4624// add HTTP headers to the request. 4625func (c *ProjectsAndroidAppsPatchCall) Header() http.Header { 4626 if c.header_ == nil { 4627 c.header_ = make(http.Header) 4628 } 4629 return c.header_ 4630} 4631 4632func (c *ProjectsAndroidAppsPatchCall) doRequest(alt string) (*http.Response, error) { 4633 reqHeaders := make(http.Header) 4634 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 4635 for k, v := range c.header_ { 4636 reqHeaders[k] = v 4637 } 4638 reqHeaders.Set("User-Agent", c.s.userAgent()) 4639 var body io.Reader = nil 4640 body, err := googleapi.WithoutDataWrapper.JSONReader(c.androidapp) 4641 if err != nil { 4642 return nil, err 4643 } 4644 reqHeaders.Set("Content-Type", "application/json") 4645 c.urlParams_.Set("alt", alt) 4646 c.urlParams_.Set("prettyPrint", "false") 4647 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 4648 urls += "?" + c.urlParams_.Encode() 4649 req, err := http.NewRequest("PATCH", urls, body) 4650 if err != nil { 4651 return nil, err 4652 } 4653 req.Header = reqHeaders 4654 googleapi.Expand(req.URL, map[string]string{ 4655 "name": c.name, 4656 }) 4657 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4658} 4659 4660// Do executes the "firebase.projects.androidApps.patch" call. 4661// Exactly one of *AndroidApp or error will be non-nil. Any non-2xx 4662// status code is an error. Response headers are in either 4663// *AndroidApp.ServerResponse.Header or (if a response was returned at 4664// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 4665// to check whether the returned error was because 4666// http.StatusNotModified was returned. 4667func (c *ProjectsAndroidAppsPatchCall) Do(opts ...googleapi.CallOption) (*AndroidApp, error) { 4668 gensupport.SetOptions(c.urlParams_, opts...) 4669 res, err := c.doRequest("json") 4670 if res != nil && res.StatusCode == http.StatusNotModified { 4671 if res.Body != nil { 4672 res.Body.Close() 4673 } 4674 return nil, &googleapi.Error{ 4675 Code: res.StatusCode, 4676 Header: res.Header, 4677 } 4678 } 4679 if err != nil { 4680 return nil, err 4681 } 4682 defer googleapi.CloseBody(res) 4683 if err := googleapi.CheckResponse(res); err != nil { 4684 return nil, err 4685 } 4686 ret := &AndroidApp{ 4687 ServerResponse: googleapi.ServerResponse{ 4688 Header: res.Header, 4689 HTTPStatusCode: res.StatusCode, 4690 }, 4691 } 4692 target := &ret 4693 if err := gensupport.DecodeResponse(target, res); err != nil { 4694 return nil, err 4695 } 4696 return ret, nil 4697 // { 4698 // "description": "Updates the attributes of the AndroidApp identified by the specified\nresource name.", 4699 // "flatPath": "v1beta1/projects/{projectsId}/androidApps/{androidAppsId}", 4700 // "httpMethod": "PATCH", 4701 // "id": "firebase.projects.androidApps.patch", 4702 // "parameterOrder": [ 4703 // "name" 4704 // ], 4705 // "parameters": { 4706 // "name": { 4707 // "description": "The fully qualified resource name of the App, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/androidApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 4708 // "location": "path", 4709 // "pattern": "^projects/[^/]+/androidApps/[^/]+$", 4710 // "required": true, 4711 // "type": "string" 4712 // }, 4713 // "updateMask": { 4714 // "description": "Specifies which fields to update.\n\u003cbr\u003eNote that the fields `name`, `appId`, `projectId`, and `packageName`\nare all immutable.", 4715 // "format": "google-fieldmask", 4716 // "location": "query", 4717 // "type": "string" 4718 // } 4719 // }, 4720 // "path": "v1beta1/{+name}", 4721 // "request": { 4722 // "$ref": "AndroidApp" 4723 // }, 4724 // "response": { 4725 // "$ref": "AndroidApp" 4726 // }, 4727 // "scopes": [ 4728 // "https://www.googleapis.com/auth/cloud-platform", 4729 // "https://www.googleapis.com/auth/firebase" 4730 // ] 4731 // } 4732 4733} 4734 4735// method id "firebase.projects.androidApps.sha.create": 4736 4737type ProjectsAndroidAppsShaCreateCall struct { 4738 s *Service 4739 parentid string 4740 shacertificate *ShaCertificate 4741 urlParams_ gensupport.URLParams 4742 ctx_ context.Context 4743 header_ http.Header 4744} 4745 4746// Create: Adds a SHA certificate to the specified AndroidApp. 4747func (r *ProjectsAndroidAppsShaService) Create(parentid string, shacertificate *ShaCertificate) *ProjectsAndroidAppsShaCreateCall { 4748 c := &ProjectsAndroidAppsShaCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4749 c.parentid = parentid 4750 c.shacertificate = shacertificate 4751 return c 4752} 4753 4754// Fields allows partial responses to be retrieved. See 4755// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4756// for more information. 4757func (c *ProjectsAndroidAppsShaCreateCall) Fields(s ...googleapi.Field) *ProjectsAndroidAppsShaCreateCall { 4758 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4759 return c 4760} 4761 4762// Context sets the context to be used in this call's Do method. Any 4763// pending HTTP request will be aborted if the provided context is 4764// canceled. 4765func (c *ProjectsAndroidAppsShaCreateCall) Context(ctx context.Context) *ProjectsAndroidAppsShaCreateCall { 4766 c.ctx_ = ctx 4767 return c 4768} 4769 4770// Header returns an http.Header that can be modified by the caller to 4771// add HTTP headers to the request. 4772func (c *ProjectsAndroidAppsShaCreateCall) Header() http.Header { 4773 if c.header_ == nil { 4774 c.header_ = make(http.Header) 4775 } 4776 return c.header_ 4777} 4778 4779func (c *ProjectsAndroidAppsShaCreateCall) doRequest(alt string) (*http.Response, error) { 4780 reqHeaders := make(http.Header) 4781 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 4782 for k, v := range c.header_ { 4783 reqHeaders[k] = v 4784 } 4785 reqHeaders.Set("User-Agent", c.s.userAgent()) 4786 var body io.Reader = nil 4787 body, err := googleapi.WithoutDataWrapper.JSONReader(c.shacertificate) 4788 if err != nil { 4789 return nil, err 4790 } 4791 reqHeaders.Set("Content-Type", "application/json") 4792 c.urlParams_.Set("alt", alt) 4793 c.urlParams_.Set("prettyPrint", "false") 4794 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/sha") 4795 urls += "?" + c.urlParams_.Encode() 4796 req, err := http.NewRequest("POST", urls, body) 4797 if err != nil { 4798 return nil, err 4799 } 4800 req.Header = reqHeaders 4801 googleapi.Expand(req.URL, map[string]string{ 4802 "parent": c.parentid, 4803 }) 4804 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4805} 4806 4807// Do executes the "firebase.projects.androidApps.sha.create" call. 4808// Exactly one of *ShaCertificate or error will be non-nil. Any non-2xx 4809// status code is an error. Response headers are in either 4810// *ShaCertificate.ServerResponse.Header or (if a response was returned 4811// at all) in error.(*googleapi.Error).Header. Use 4812// googleapi.IsNotModified to check whether the returned error was 4813// because http.StatusNotModified was returned. 4814func (c *ProjectsAndroidAppsShaCreateCall) Do(opts ...googleapi.CallOption) (*ShaCertificate, error) { 4815 gensupport.SetOptions(c.urlParams_, opts...) 4816 res, err := c.doRequest("json") 4817 if res != nil && res.StatusCode == http.StatusNotModified { 4818 if res.Body != nil { 4819 res.Body.Close() 4820 } 4821 return nil, &googleapi.Error{ 4822 Code: res.StatusCode, 4823 Header: res.Header, 4824 } 4825 } 4826 if err != nil { 4827 return nil, err 4828 } 4829 defer googleapi.CloseBody(res) 4830 if err := googleapi.CheckResponse(res); err != nil { 4831 return nil, err 4832 } 4833 ret := &ShaCertificate{ 4834 ServerResponse: googleapi.ServerResponse{ 4835 Header: res.Header, 4836 HTTPStatusCode: res.StatusCode, 4837 }, 4838 } 4839 target := &ret 4840 if err := gensupport.DecodeResponse(target, res); err != nil { 4841 return nil, err 4842 } 4843 return ret, nil 4844 // { 4845 // "description": "Adds a SHA certificate to the specified AndroidApp.", 4846 // "flatPath": "v1beta1/projects/{projectsId}/androidApps/{androidAppsId}/sha", 4847 // "httpMethod": "POST", 4848 // "id": "firebase.projects.androidApps.sha.create", 4849 // "parameterOrder": [ 4850 // "parent" 4851 // ], 4852 // "parameters": { 4853 // "parent": { 4854 // "description": "The parent App to which a SHA certificate will be added, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/androidApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e\n\u003cbr\u003eAs an \u003cvar\u003eappId\u003c/var\u003e is a unique identifier, the Unique Resource\nfrom Sub-Collection access pattern may be used here, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/-/androidApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 4855 // "location": "path", 4856 // "pattern": "^projects/[^/]+/androidApps/[^/]+$", 4857 // "required": true, 4858 // "type": "string" 4859 // } 4860 // }, 4861 // "path": "v1beta1/{+parent}/sha", 4862 // "request": { 4863 // "$ref": "ShaCertificate" 4864 // }, 4865 // "response": { 4866 // "$ref": "ShaCertificate" 4867 // }, 4868 // "scopes": [ 4869 // "https://www.googleapis.com/auth/cloud-platform", 4870 // "https://www.googleapis.com/auth/firebase" 4871 // ] 4872 // } 4873 4874} 4875 4876// method id "firebase.projects.androidApps.sha.delete": 4877 4878type ProjectsAndroidAppsShaDeleteCall struct { 4879 s *Service 4880 name string 4881 urlParams_ gensupport.URLParams 4882 ctx_ context.Context 4883 header_ http.Header 4884} 4885 4886// Delete: Removes a SHA certificate from the specified AndroidApp. 4887func (r *ProjectsAndroidAppsShaService) Delete(name string) *ProjectsAndroidAppsShaDeleteCall { 4888 c := &ProjectsAndroidAppsShaDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4889 c.name = name 4890 return c 4891} 4892 4893// Fields allows partial responses to be retrieved. See 4894// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4895// for more information. 4896func (c *ProjectsAndroidAppsShaDeleteCall) Fields(s ...googleapi.Field) *ProjectsAndroidAppsShaDeleteCall { 4897 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4898 return c 4899} 4900 4901// Context sets the context to be used in this call's Do method. Any 4902// pending HTTP request will be aborted if the provided context is 4903// canceled. 4904func (c *ProjectsAndroidAppsShaDeleteCall) Context(ctx context.Context) *ProjectsAndroidAppsShaDeleteCall { 4905 c.ctx_ = ctx 4906 return c 4907} 4908 4909// Header returns an http.Header that can be modified by the caller to 4910// add HTTP headers to the request. 4911func (c *ProjectsAndroidAppsShaDeleteCall) Header() http.Header { 4912 if c.header_ == nil { 4913 c.header_ = make(http.Header) 4914 } 4915 return c.header_ 4916} 4917 4918func (c *ProjectsAndroidAppsShaDeleteCall) doRequest(alt string) (*http.Response, error) { 4919 reqHeaders := make(http.Header) 4920 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 4921 for k, v := range c.header_ { 4922 reqHeaders[k] = v 4923 } 4924 reqHeaders.Set("User-Agent", c.s.userAgent()) 4925 var body io.Reader = nil 4926 c.urlParams_.Set("alt", alt) 4927 c.urlParams_.Set("prettyPrint", "false") 4928 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 4929 urls += "?" + c.urlParams_.Encode() 4930 req, err := http.NewRequest("DELETE", urls, body) 4931 if err != nil { 4932 return nil, err 4933 } 4934 req.Header = reqHeaders 4935 googleapi.Expand(req.URL, map[string]string{ 4936 "name": c.name, 4937 }) 4938 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4939} 4940 4941// Do executes the "firebase.projects.androidApps.sha.delete" call. 4942// Exactly one of *Empty or error will be non-nil. Any non-2xx status 4943// code is an error. Response headers are in either 4944// *Empty.ServerResponse.Header or (if a response was returned at all) 4945// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 4946// check whether the returned error was because http.StatusNotModified 4947// was returned. 4948func (c *ProjectsAndroidAppsShaDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 4949 gensupport.SetOptions(c.urlParams_, opts...) 4950 res, err := c.doRequest("json") 4951 if res != nil && res.StatusCode == http.StatusNotModified { 4952 if res.Body != nil { 4953 res.Body.Close() 4954 } 4955 return nil, &googleapi.Error{ 4956 Code: res.StatusCode, 4957 Header: res.Header, 4958 } 4959 } 4960 if err != nil { 4961 return nil, err 4962 } 4963 defer googleapi.CloseBody(res) 4964 if err := googleapi.CheckResponse(res); err != nil { 4965 return nil, err 4966 } 4967 ret := &Empty{ 4968 ServerResponse: googleapi.ServerResponse{ 4969 Header: res.Header, 4970 HTTPStatusCode: res.StatusCode, 4971 }, 4972 } 4973 target := &ret 4974 if err := gensupport.DecodeResponse(target, res); err != nil { 4975 return nil, err 4976 } 4977 return ret, nil 4978 // { 4979 // "description": "Removes a SHA certificate from the specified AndroidApp.", 4980 // "flatPath": "v1beta1/projects/{projectsId}/androidApps/{androidAppsId}/sha/{shaId}", 4981 // "httpMethod": "DELETE", 4982 // "id": "firebase.projects.androidApps.sha.delete", 4983 // "parameterOrder": [ 4984 // "name" 4985 // ], 4986 // "parameters": { 4987 // "name": { 4988 // "description": "The fully qualified resource name of the `sha-key`, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/androidApps/\u003cvar\u003eappId\u003c/var\u003e/sha/\u003cvar\u003eshaId\u003c/var\u003e\u003c/code\u003e\n\u003cbr\u003eYou can obtain the full name from the response of\n[`ListShaCertificates`](../projects.androidApps.sha/list) or the original\n[`CreateShaCertificate`](../projects.androidApps.sha/create).", 4989 // "location": "path", 4990 // "pattern": "^projects/[^/]+/androidApps/[^/]+/sha/[^/]+$", 4991 // "required": true, 4992 // "type": "string" 4993 // } 4994 // }, 4995 // "path": "v1beta1/{+name}", 4996 // "response": { 4997 // "$ref": "Empty" 4998 // }, 4999 // "scopes": [ 5000 // "https://www.googleapis.com/auth/cloud-platform", 5001 // "https://www.googleapis.com/auth/firebase" 5002 // ] 5003 // } 5004 5005} 5006 5007// method id "firebase.projects.androidApps.sha.list": 5008 5009type ProjectsAndroidAppsShaListCall struct { 5010 s *Service 5011 parentid string 5012 urlParams_ gensupport.URLParams 5013 ifNoneMatch_ string 5014 ctx_ context.Context 5015 header_ http.Header 5016} 5017 5018// List: Returns the list of SHA-1 and SHA-256 certificates for the 5019// specified 5020// AndroidApp. 5021func (r *ProjectsAndroidAppsShaService) List(parentid string) *ProjectsAndroidAppsShaListCall { 5022 c := &ProjectsAndroidAppsShaListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5023 c.parentid = parentid 5024 return c 5025} 5026 5027// Fields allows partial responses to be retrieved. See 5028// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5029// for more information. 5030func (c *ProjectsAndroidAppsShaListCall) Fields(s ...googleapi.Field) *ProjectsAndroidAppsShaListCall { 5031 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5032 return c 5033} 5034 5035// IfNoneMatch sets the optional parameter which makes the operation 5036// fail if the object's ETag matches the given value. This is useful for 5037// getting updates only after the object has changed since the last 5038// request. Use googleapi.IsNotModified to check whether the response 5039// error from Do is the result of In-None-Match. 5040func (c *ProjectsAndroidAppsShaListCall) IfNoneMatch(entityTag string) *ProjectsAndroidAppsShaListCall { 5041 c.ifNoneMatch_ = entityTag 5042 return c 5043} 5044 5045// Context sets the context to be used in this call's Do method. Any 5046// pending HTTP request will be aborted if the provided context is 5047// canceled. 5048func (c *ProjectsAndroidAppsShaListCall) Context(ctx context.Context) *ProjectsAndroidAppsShaListCall { 5049 c.ctx_ = ctx 5050 return c 5051} 5052 5053// Header returns an http.Header that can be modified by the caller to 5054// add HTTP headers to the request. 5055func (c *ProjectsAndroidAppsShaListCall) Header() http.Header { 5056 if c.header_ == nil { 5057 c.header_ = make(http.Header) 5058 } 5059 return c.header_ 5060} 5061 5062func (c *ProjectsAndroidAppsShaListCall) doRequest(alt string) (*http.Response, error) { 5063 reqHeaders := make(http.Header) 5064 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 5065 for k, v := range c.header_ { 5066 reqHeaders[k] = v 5067 } 5068 reqHeaders.Set("User-Agent", c.s.userAgent()) 5069 if c.ifNoneMatch_ != "" { 5070 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5071 } 5072 var body io.Reader = nil 5073 c.urlParams_.Set("alt", alt) 5074 c.urlParams_.Set("prettyPrint", "false") 5075 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/sha") 5076 urls += "?" + c.urlParams_.Encode() 5077 req, err := http.NewRequest("GET", urls, body) 5078 if err != nil { 5079 return nil, err 5080 } 5081 req.Header = reqHeaders 5082 googleapi.Expand(req.URL, map[string]string{ 5083 "parent": c.parentid, 5084 }) 5085 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5086} 5087 5088// Do executes the "firebase.projects.androidApps.sha.list" call. 5089// Exactly one of *ListShaCertificatesResponse or error will be non-nil. 5090// Any non-2xx status code is an error. Response headers are in either 5091// *ListShaCertificatesResponse.ServerResponse.Header or (if a response 5092// was returned at all) in error.(*googleapi.Error).Header. Use 5093// googleapi.IsNotModified to check whether the returned error was 5094// because http.StatusNotModified was returned. 5095func (c *ProjectsAndroidAppsShaListCall) Do(opts ...googleapi.CallOption) (*ListShaCertificatesResponse, error) { 5096 gensupport.SetOptions(c.urlParams_, opts...) 5097 res, err := c.doRequest("json") 5098 if res != nil && res.StatusCode == http.StatusNotModified { 5099 if res.Body != nil { 5100 res.Body.Close() 5101 } 5102 return nil, &googleapi.Error{ 5103 Code: res.StatusCode, 5104 Header: res.Header, 5105 } 5106 } 5107 if err != nil { 5108 return nil, err 5109 } 5110 defer googleapi.CloseBody(res) 5111 if err := googleapi.CheckResponse(res); err != nil { 5112 return nil, err 5113 } 5114 ret := &ListShaCertificatesResponse{ 5115 ServerResponse: googleapi.ServerResponse{ 5116 Header: res.Header, 5117 HTTPStatusCode: res.StatusCode, 5118 }, 5119 } 5120 target := &ret 5121 if err := gensupport.DecodeResponse(target, res); err != nil { 5122 return nil, err 5123 } 5124 return ret, nil 5125 // { 5126 // "description": "Returns the list of SHA-1 and SHA-256 certificates for the specified\nAndroidApp.", 5127 // "flatPath": "v1beta1/projects/{projectsId}/androidApps/{androidAppsId}/sha", 5128 // "httpMethod": "GET", 5129 // "id": "firebase.projects.androidApps.sha.list", 5130 // "parameterOrder": [ 5131 // "parent" 5132 // ], 5133 // "parameters": { 5134 // "parent": { 5135 // "description": "The parent App for which to list SHA certificates, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/androidApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e\n\u003cbr\u003eAs an \u003cvar\u003eappId\u003c/var\u003e is a unique identifier, the Unique Resource\nfrom Sub-Collection access pattern may be used here, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/-/androidApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 5136 // "location": "path", 5137 // "pattern": "^projects/[^/]+/androidApps/[^/]+$", 5138 // "required": true, 5139 // "type": "string" 5140 // } 5141 // }, 5142 // "path": "v1beta1/{+parent}/sha", 5143 // "response": { 5144 // "$ref": "ListShaCertificatesResponse" 5145 // }, 5146 // "scopes": [ 5147 // "https://www.googleapis.com/auth/cloud-platform", 5148 // "https://www.googleapis.com/auth/cloud-platform.read-only", 5149 // "https://www.googleapis.com/auth/firebase", 5150 // "https://www.googleapis.com/auth/firebase.readonly" 5151 // ] 5152 // } 5153 5154} 5155 5156// method id "firebase.projects.availableLocations.list": 5157 5158type ProjectsAvailableLocationsListCall struct { 5159 s *Service 5160 parent string 5161 urlParams_ gensupport.URLParams 5162 ifNoneMatch_ string 5163 ctx_ context.Context 5164 header_ http.Header 5165} 5166 5167// List: Returns a list of valid Google Cloud Platform (GCP) resource 5168// locations for 5169// the specified Project (including a FirebaseProject). 5170// <br> 5171// <br>The default GCP resource location of a project defines the 5172// geographical 5173// location where project resources, such as Cloud Firestore, will 5174// be 5175// provisioned by default. 5176// <br> 5177// <br>The returned list are the available 5178// [GCP 5179// resource 5180// locations](https://firebase.google.com/docs/projects/location 5181// s). <br> 5182// <br>This call checks for any location restrictions for the 5183// specified 5184// Project and, thus, might return a subset of all possible GCP 5185// resource 5186// locations. To list all GCP resource locations (regardless of 5187// any 5188// restrictions), call the endpoint without specifying a `projectId` 5189// (that 5190// is, 5191// `/v1beta1/{parent=projects/-}/listAvailableLocations`). 5192// <br> 5193// <br>T 5194// o call `ListAvailableLocations` with a specified project, a 5195// member 5196// must be at minimum a Viewer of the project. Calls without a 5197// specified 5198// project do not require any specific project permissions. 5199func (r *ProjectsAvailableLocationsService) List(parent string) *ProjectsAvailableLocationsListCall { 5200 c := &ProjectsAvailableLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5201 c.parent = parent 5202 return c 5203} 5204 5205// PageSize sets the optional parameter "pageSize": The maximum number 5206// of locations to return in the response. 5207// <br> 5208// <br>The server may return fewer than this value at its discretion. 5209// If no value is specified (or too large a value is specified), then 5210// the 5211// server will impose its own limit. 5212// <br> 5213// <br>This value cannot be negative. 5214func (c *ProjectsAvailableLocationsListCall) PageSize(pageSize int64) *ProjectsAvailableLocationsListCall { 5215 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 5216 return c 5217} 5218 5219// PageToken sets the optional parameter "pageToken": Token returned 5220// from a previous call to `ListAvailableLocations` indicating 5221// where in the list of locations to resume listing. 5222func (c *ProjectsAvailableLocationsListCall) PageToken(pageToken string) *ProjectsAvailableLocationsListCall { 5223 c.urlParams_.Set("pageToken", pageToken) 5224 return c 5225} 5226 5227// Fields allows partial responses to be retrieved. See 5228// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5229// for more information. 5230func (c *ProjectsAvailableLocationsListCall) Fields(s ...googleapi.Field) *ProjectsAvailableLocationsListCall { 5231 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5232 return c 5233} 5234 5235// IfNoneMatch sets the optional parameter which makes the operation 5236// fail if the object's ETag matches the given value. This is useful for 5237// getting updates only after the object has changed since the last 5238// request. Use googleapi.IsNotModified to check whether the response 5239// error from Do is the result of In-None-Match. 5240func (c *ProjectsAvailableLocationsListCall) IfNoneMatch(entityTag string) *ProjectsAvailableLocationsListCall { 5241 c.ifNoneMatch_ = entityTag 5242 return c 5243} 5244 5245// Context sets the context to be used in this call's Do method. Any 5246// pending HTTP request will be aborted if the provided context is 5247// canceled. 5248func (c *ProjectsAvailableLocationsListCall) Context(ctx context.Context) *ProjectsAvailableLocationsListCall { 5249 c.ctx_ = ctx 5250 return c 5251} 5252 5253// Header returns an http.Header that can be modified by the caller to 5254// add HTTP headers to the request. 5255func (c *ProjectsAvailableLocationsListCall) Header() http.Header { 5256 if c.header_ == nil { 5257 c.header_ = make(http.Header) 5258 } 5259 return c.header_ 5260} 5261 5262func (c *ProjectsAvailableLocationsListCall) doRequest(alt string) (*http.Response, error) { 5263 reqHeaders := make(http.Header) 5264 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 5265 for k, v := range c.header_ { 5266 reqHeaders[k] = v 5267 } 5268 reqHeaders.Set("User-Agent", c.s.userAgent()) 5269 if c.ifNoneMatch_ != "" { 5270 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5271 } 5272 var body io.Reader = nil 5273 c.urlParams_.Set("alt", alt) 5274 c.urlParams_.Set("prettyPrint", "false") 5275 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/availableLocations") 5276 urls += "?" + c.urlParams_.Encode() 5277 req, err := http.NewRequest("GET", urls, body) 5278 if err != nil { 5279 return nil, err 5280 } 5281 req.Header = reqHeaders 5282 googleapi.Expand(req.URL, map[string]string{ 5283 "parent": c.parent, 5284 }) 5285 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5286} 5287 5288// Do executes the "firebase.projects.availableLocations.list" call. 5289// Exactly one of *ListAvailableLocationsResponse or error will be 5290// non-nil. Any non-2xx status code is an error. Response headers are in 5291// either *ListAvailableLocationsResponse.ServerResponse.Header or (if a 5292// response was returned at all) in error.(*googleapi.Error).Header. Use 5293// googleapi.IsNotModified to check whether the returned error was 5294// because http.StatusNotModified was returned. 5295func (c *ProjectsAvailableLocationsListCall) Do(opts ...googleapi.CallOption) (*ListAvailableLocationsResponse, error) { 5296 gensupport.SetOptions(c.urlParams_, opts...) 5297 res, err := c.doRequest("json") 5298 if res != nil && res.StatusCode == http.StatusNotModified { 5299 if res.Body != nil { 5300 res.Body.Close() 5301 } 5302 return nil, &googleapi.Error{ 5303 Code: res.StatusCode, 5304 Header: res.Header, 5305 } 5306 } 5307 if err != nil { 5308 return nil, err 5309 } 5310 defer googleapi.CloseBody(res) 5311 if err := googleapi.CheckResponse(res); err != nil { 5312 return nil, err 5313 } 5314 ret := &ListAvailableLocationsResponse{ 5315 ServerResponse: googleapi.ServerResponse{ 5316 Header: res.Header, 5317 HTTPStatusCode: res.StatusCode, 5318 }, 5319 } 5320 target := &ret 5321 if err := gensupport.DecodeResponse(target, res); err != nil { 5322 return nil, err 5323 } 5324 return ret, nil 5325 // { 5326 // "description": "Returns a list of valid Google Cloud Platform (GCP) resource locations for\nthe specified Project (including a FirebaseProject).\n\u003cbr\u003e\n\u003cbr\u003eThe default GCP resource location of a project defines the geographical\nlocation where project resources, such as Cloud Firestore, will be\nprovisioned by default.\n\u003cbr\u003e\n\u003cbr\u003eThe returned list are the available\n[GCP resource\nlocations](https://firebase.google.com/docs/projects/locations). \u003cbr\u003e\n\u003cbr\u003eThis call checks for any location restrictions for the specified\nProject and, thus, might return a subset of all possible GCP resource\nlocations. To list all GCP resource locations (regardless of any\nrestrictions), call the endpoint without specifying a `projectId` (that is,\n`/v1beta1/{parent=projects/-}/listAvailableLocations`).\n\u003cbr\u003e\n\u003cbr\u003eTo call `ListAvailableLocations` with a specified project, a member\nmust be at minimum a Viewer of the project. Calls without a specified\nproject do not require any specific project permissions.", 5327 // "flatPath": "v1beta1/projects/{projectsId}/availableLocations", 5328 // "httpMethod": "GET", 5329 // "id": "firebase.projects.availableLocations.list", 5330 // "parameterOrder": [ 5331 // "parent" 5332 // ], 5333 // "parameters": { 5334 // "pageSize": { 5335 // "description": "The maximum number of locations to return in the response.\n\u003cbr\u003e\n\u003cbr\u003eThe server may return fewer than this value at its discretion.\nIf no value is specified (or too large a value is specified), then the\nserver will impose its own limit.\n\u003cbr\u003e\n\u003cbr\u003eThis value cannot be negative.", 5336 // "format": "int32", 5337 // "location": "query", 5338 // "type": "integer" 5339 // }, 5340 // "pageToken": { 5341 // "description": "Token returned from a previous call to `ListAvailableLocations` indicating\nwhere in the list of locations to resume listing.", 5342 // "location": "query", 5343 // "type": "string" 5344 // }, 5345 // "parent": { 5346 // "description": "The Project for which to list GCP resource locations, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e\n\u003cbr\u003eIf no project is specified (that is, `projects/-`), the returned list\ndoes not take into account org-specific or project-specific location\nrestrictions.", 5347 // "location": "path", 5348 // "pattern": "^projects/[^/]+$", 5349 // "required": true, 5350 // "type": "string" 5351 // } 5352 // }, 5353 // "path": "v1beta1/{+parent}/availableLocations", 5354 // "response": { 5355 // "$ref": "ListAvailableLocationsResponse" 5356 // }, 5357 // "scopes": [ 5358 // "https://www.googleapis.com/auth/cloud-platform", 5359 // "https://www.googleapis.com/auth/cloud-platform.read-only", 5360 // "https://www.googleapis.com/auth/firebase", 5361 // "https://www.googleapis.com/auth/firebase.readonly" 5362 // ] 5363 // } 5364 5365} 5366 5367// Pages invokes f for each page of results. 5368// A non-nil error returned from f will halt the iteration. 5369// The provided context supersedes any context provided to the Context method. 5370func (c *ProjectsAvailableLocationsListCall) Pages(ctx context.Context, f func(*ListAvailableLocationsResponse) error) error { 5371 c.ctx_ = ctx 5372 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 5373 for { 5374 x, err := c.Do() 5375 if err != nil { 5376 return err 5377 } 5378 if err := f(x); err != nil { 5379 return err 5380 } 5381 if x.NextPageToken == "" { 5382 return nil 5383 } 5384 c.PageToken(x.NextPageToken) 5385 } 5386} 5387 5388// method id "firebase.projects.defaultLocation.finalize": 5389 5390type ProjectsDefaultLocationFinalizeCall struct { 5391 s *Service 5392 parent string 5393 finalizedefaultlocationrequest *FinalizeDefaultLocationRequest 5394 urlParams_ gensupport.URLParams 5395 ctx_ context.Context 5396 header_ http.Header 5397} 5398 5399// Finalize: Sets the default Google Cloud Platform (GCP) resource 5400// location for the 5401// specified FirebaseProject. 5402// <br> 5403// <br>This method creates an App Engine application with a 5404// [default Cloud 5405// Storage 5406// bucket](https://cloud.google.com/appengine/docs/standard/pytho 5407// n/googlecloudstorageclient/setting-up-cloud-storage#activating_a_cloud 5408// _storage_bucket), 5409// located in the 5410// specified 5411// [`location_id`](#body.request_body.FIELDS.location_id). 5412// This 5413// location must be one of the available 5414// [GCP 5415// resource 5416// locations](https://firebase.google.com/docs/projects/location 5417// s). <br> 5418// <br>After the default GCP resource location is finalized, or if it 5419// was 5420// already set, it cannot be changed. The default GCP resource location 5421// for 5422// the specified FirebaseProject might already be set because either 5423// the 5424// GCP `Project` already has an App Engine application 5425// or 5426// `FinalizeDefaultLocation` was previously called with a 5427// specified 5428// `location_id`. Any new calls to `FinalizeDefaultLocation` with 5429// a 5430// <em>different</em> specified `location_id` will return a 409 5431// error. 5432// <br> 5433// <br>The result of this call is an 5434// [`Operation`](../../v1beta1/operations), 5435// which can be used to track the provisioning process. 5436// The 5437// [`response`](../../v1beta1/operations#Operation.FIELDS.response) type 5438// of 5439// the `Operation` is google.protobuf.Empty. 5440// <br> 5441// <br>The `Operation` can be polled by its `name` using 5442// GetOperation until `done` is 5443// true. When `done` is true, the `Operation` has either succeeded or 5444// failed. 5445// If the `Operation` has succeeded, 5446// its 5447// [`response`](../../v1beta1/operations#Operation.FIELDS.response) will 5448// be 5449// set to a google.protobuf.Empty; if the `Operation` has failed, 5450// its 5451// `error` will be set to a google.rpc.Status. The `Operation` 5452// is 5453// automatically deleted after completion, so there is no need to 5454// call 5455// DeleteOperation. 5456// <br> 5457// <br>All fields listed in the [request body](#request-body) are 5458// required. 5459// <br> 5460// <br>To call `FinalizeDefaultLocation`, a member must be an Owner 5461// of the project. 5462func (r *ProjectsDefaultLocationService) Finalize(parent string, finalizedefaultlocationrequest *FinalizeDefaultLocationRequest) *ProjectsDefaultLocationFinalizeCall { 5463 c := &ProjectsDefaultLocationFinalizeCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5464 c.parent = parent 5465 c.finalizedefaultlocationrequest = finalizedefaultlocationrequest 5466 return c 5467} 5468 5469// Fields allows partial responses to be retrieved. See 5470// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5471// for more information. 5472func (c *ProjectsDefaultLocationFinalizeCall) Fields(s ...googleapi.Field) *ProjectsDefaultLocationFinalizeCall { 5473 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5474 return c 5475} 5476 5477// Context sets the context to be used in this call's Do method. Any 5478// pending HTTP request will be aborted if the provided context is 5479// canceled. 5480func (c *ProjectsDefaultLocationFinalizeCall) Context(ctx context.Context) *ProjectsDefaultLocationFinalizeCall { 5481 c.ctx_ = ctx 5482 return c 5483} 5484 5485// Header returns an http.Header that can be modified by the caller to 5486// add HTTP headers to the request. 5487func (c *ProjectsDefaultLocationFinalizeCall) Header() http.Header { 5488 if c.header_ == nil { 5489 c.header_ = make(http.Header) 5490 } 5491 return c.header_ 5492} 5493 5494func (c *ProjectsDefaultLocationFinalizeCall) doRequest(alt string) (*http.Response, error) { 5495 reqHeaders := make(http.Header) 5496 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 5497 for k, v := range c.header_ { 5498 reqHeaders[k] = v 5499 } 5500 reqHeaders.Set("User-Agent", c.s.userAgent()) 5501 var body io.Reader = nil 5502 body, err := googleapi.WithoutDataWrapper.JSONReader(c.finalizedefaultlocationrequest) 5503 if err != nil { 5504 return nil, err 5505 } 5506 reqHeaders.Set("Content-Type", "application/json") 5507 c.urlParams_.Set("alt", alt) 5508 c.urlParams_.Set("prettyPrint", "false") 5509 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/defaultLocation:finalize") 5510 urls += "?" + c.urlParams_.Encode() 5511 req, err := http.NewRequest("POST", urls, body) 5512 if err != nil { 5513 return nil, err 5514 } 5515 req.Header = reqHeaders 5516 googleapi.Expand(req.URL, map[string]string{ 5517 "parent": c.parent, 5518 }) 5519 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5520} 5521 5522// Do executes the "firebase.projects.defaultLocation.finalize" call. 5523// Exactly one of *Operation or error will be non-nil. Any non-2xx 5524// status code is an error. Response headers are in either 5525// *Operation.ServerResponse.Header or (if a response was returned at 5526// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5527// to check whether the returned error was because 5528// http.StatusNotModified was returned. 5529func (c *ProjectsDefaultLocationFinalizeCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 5530 gensupport.SetOptions(c.urlParams_, opts...) 5531 res, err := c.doRequest("json") 5532 if res != nil && res.StatusCode == http.StatusNotModified { 5533 if res.Body != nil { 5534 res.Body.Close() 5535 } 5536 return nil, &googleapi.Error{ 5537 Code: res.StatusCode, 5538 Header: res.Header, 5539 } 5540 } 5541 if err != nil { 5542 return nil, err 5543 } 5544 defer googleapi.CloseBody(res) 5545 if err := googleapi.CheckResponse(res); err != nil { 5546 return nil, err 5547 } 5548 ret := &Operation{ 5549 ServerResponse: googleapi.ServerResponse{ 5550 Header: res.Header, 5551 HTTPStatusCode: res.StatusCode, 5552 }, 5553 } 5554 target := &ret 5555 if err := gensupport.DecodeResponse(target, res); err != nil { 5556 return nil, err 5557 } 5558 return ret, nil 5559 // { 5560 // "description": "Sets the default Google Cloud Platform (GCP) resource location for the\nspecified FirebaseProject.\n\u003cbr\u003e\n\u003cbr\u003eThis method creates an App Engine application with a\n[default Cloud Storage\nbucket](https://cloud.google.com/appengine/docs/standard/python/googlecloudstorageclient/setting-up-cloud-storage#activating_a_cloud_storage_bucket),\nlocated in the specified\n[`location_id`](#body.request_body.FIELDS.location_id).\nThis location must be one of the available\n[GCP resource\nlocations](https://firebase.google.com/docs/projects/locations). \u003cbr\u003e\n\u003cbr\u003eAfter the default GCP resource location is finalized, or if it was\nalready set, it cannot be changed. The default GCP resource location for\nthe specified FirebaseProject might already be set because either the\nGCP `Project` already has an App Engine application or\n`FinalizeDefaultLocation` was previously called with a specified\n`location_id`. Any new calls to `FinalizeDefaultLocation` with a\n\u003cem\u003edifferent\u003c/em\u003e specified `location_id` will return a 409 error.\n\u003cbr\u003e\n\u003cbr\u003eThe result of this call is an [`Operation`](../../v1beta1/operations),\nwhich can be used to track the provisioning process. The\n[`response`](../../v1beta1/operations#Operation.FIELDS.response) type of\nthe `Operation` is google.protobuf.Empty.\n\u003cbr\u003e\n\u003cbr\u003eThe `Operation` can be polled by its `name` using\nGetOperation until `done` is\ntrue. When `done` is true, the `Operation` has either succeeded or failed.\nIf the `Operation` has succeeded, its\n[`response`](../../v1beta1/operations#Operation.FIELDS.response) will be\nset to a google.protobuf.Empty; if the `Operation` has failed, its\n`error` will be set to a google.rpc.Status. The `Operation` is\nautomatically deleted after completion, so there is no need to call\nDeleteOperation.\n\u003cbr\u003e\n\u003cbr\u003eAll fields listed in the [request body](#request-body) are required.\n\u003cbr\u003e\n\u003cbr\u003eTo call `FinalizeDefaultLocation`, a member must be an Owner\nof the project.", 5561 // "flatPath": "v1beta1/projects/{projectsId}/defaultLocation:finalize", 5562 // "httpMethod": "POST", 5563 // "id": "firebase.projects.defaultLocation.finalize", 5564 // "parameterOrder": [ 5565 // "parent" 5566 // ], 5567 // "parameters": { 5568 // "parent": { 5569 // "description": "The resource name of the Project for which the default GCP resource\nlocation will be set, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 5570 // "location": "path", 5571 // "pattern": "^projects/[^/]+$", 5572 // "required": true, 5573 // "type": "string" 5574 // } 5575 // }, 5576 // "path": "v1beta1/{+parent}/defaultLocation:finalize", 5577 // "request": { 5578 // "$ref": "FinalizeDefaultLocationRequest" 5579 // }, 5580 // "response": { 5581 // "$ref": "Operation" 5582 // }, 5583 // "scopes": [ 5584 // "https://www.googleapis.com/auth/cloud-platform" 5585 // ] 5586 // } 5587 5588} 5589 5590// method id "firebase.projects.iosApps.create": 5591 5592type ProjectsIosAppsCreateCall struct { 5593 s *Service 5594 parent string 5595 iosapp *IosApp 5596 urlParams_ gensupport.URLParams 5597 ctx_ context.Context 5598 header_ http.Header 5599} 5600 5601// Create: Requests that a new IosApp be created. 5602// <br> 5603// <br>The result of this call is an `Operation` which can be used to 5604// track 5605// the provisioning process. The `Operation` is automatically deleted 5606// after 5607// completion, so there is no need to call `DeleteOperation`. 5608func (r *ProjectsIosAppsService) Create(parent string, iosapp *IosApp) *ProjectsIosAppsCreateCall { 5609 c := &ProjectsIosAppsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5610 c.parent = parent 5611 c.iosapp = iosapp 5612 return c 5613} 5614 5615// Fields allows partial responses to be retrieved. See 5616// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5617// for more information. 5618func (c *ProjectsIosAppsCreateCall) Fields(s ...googleapi.Field) *ProjectsIosAppsCreateCall { 5619 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5620 return c 5621} 5622 5623// Context sets the context to be used in this call's Do method. Any 5624// pending HTTP request will be aborted if the provided context is 5625// canceled. 5626func (c *ProjectsIosAppsCreateCall) Context(ctx context.Context) *ProjectsIosAppsCreateCall { 5627 c.ctx_ = ctx 5628 return c 5629} 5630 5631// Header returns an http.Header that can be modified by the caller to 5632// add HTTP headers to the request. 5633func (c *ProjectsIosAppsCreateCall) Header() http.Header { 5634 if c.header_ == nil { 5635 c.header_ = make(http.Header) 5636 } 5637 return c.header_ 5638} 5639 5640func (c *ProjectsIosAppsCreateCall) doRequest(alt string) (*http.Response, error) { 5641 reqHeaders := make(http.Header) 5642 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 5643 for k, v := range c.header_ { 5644 reqHeaders[k] = v 5645 } 5646 reqHeaders.Set("User-Agent", c.s.userAgent()) 5647 var body io.Reader = nil 5648 body, err := googleapi.WithoutDataWrapper.JSONReader(c.iosapp) 5649 if err != nil { 5650 return nil, err 5651 } 5652 reqHeaders.Set("Content-Type", "application/json") 5653 c.urlParams_.Set("alt", alt) 5654 c.urlParams_.Set("prettyPrint", "false") 5655 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/iosApps") 5656 urls += "?" + c.urlParams_.Encode() 5657 req, err := http.NewRequest("POST", urls, body) 5658 if err != nil { 5659 return nil, err 5660 } 5661 req.Header = reqHeaders 5662 googleapi.Expand(req.URL, map[string]string{ 5663 "parent": c.parent, 5664 }) 5665 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5666} 5667 5668// Do executes the "firebase.projects.iosApps.create" call. 5669// Exactly one of *Operation or error will be non-nil. Any non-2xx 5670// status code is an error. Response headers are in either 5671// *Operation.ServerResponse.Header or (if a response was returned at 5672// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5673// to check whether the returned error was because 5674// http.StatusNotModified was returned. 5675func (c *ProjectsIosAppsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 5676 gensupport.SetOptions(c.urlParams_, opts...) 5677 res, err := c.doRequest("json") 5678 if res != nil && res.StatusCode == http.StatusNotModified { 5679 if res.Body != nil { 5680 res.Body.Close() 5681 } 5682 return nil, &googleapi.Error{ 5683 Code: res.StatusCode, 5684 Header: res.Header, 5685 } 5686 } 5687 if err != nil { 5688 return nil, err 5689 } 5690 defer googleapi.CloseBody(res) 5691 if err := googleapi.CheckResponse(res); err != nil { 5692 return nil, err 5693 } 5694 ret := &Operation{ 5695 ServerResponse: googleapi.ServerResponse{ 5696 Header: res.Header, 5697 HTTPStatusCode: res.StatusCode, 5698 }, 5699 } 5700 target := &ret 5701 if err := gensupport.DecodeResponse(target, res); err != nil { 5702 return nil, err 5703 } 5704 return ret, nil 5705 // { 5706 // "description": "Requests that a new IosApp be created.\n\u003cbr\u003e\n\u003cbr\u003eThe result of this call is an `Operation` which can be used to track\nthe provisioning process. The `Operation` is automatically deleted after\ncompletion, so there is no need to call `DeleteOperation`.", 5707 // "flatPath": "v1beta1/projects/{projectsId}/iosApps", 5708 // "httpMethod": "POST", 5709 // "id": "firebase.projects.iosApps.create", 5710 // "parameterOrder": [ 5711 // "parent" 5712 // ], 5713 // "parameters": { 5714 // "parent": { 5715 // "description": "The parent Project for which to list Apps, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 5716 // "location": "path", 5717 // "pattern": "^projects/[^/]+$", 5718 // "required": true, 5719 // "type": "string" 5720 // } 5721 // }, 5722 // "path": "v1beta1/{+parent}/iosApps", 5723 // "request": { 5724 // "$ref": "IosApp" 5725 // }, 5726 // "response": { 5727 // "$ref": "Operation" 5728 // }, 5729 // "scopes": [ 5730 // "https://www.googleapis.com/auth/cloud-platform", 5731 // "https://www.googleapis.com/auth/firebase" 5732 // ] 5733 // } 5734 5735} 5736 5737// method id "firebase.projects.iosApps.get": 5738 5739type ProjectsIosAppsGetCall struct { 5740 s *Service 5741 nameid string 5742 urlParams_ gensupport.URLParams 5743 ifNoneMatch_ string 5744 ctx_ context.Context 5745 header_ http.Header 5746} 5747 5748// Get: Gets the IosApp identified by the specified resource name. 5749func (r *ProjectsIosAppsService) Get(nameid string) *ProjectsIosAppsGetCall { 5750 c := &ProjectsIosAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5751 c.nameid = nameid 5752 return c 5753} 5754 5755// Fields allows partial responses to be retrieved. See 5756// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5757// for more information. 5758func (c *ProjectsIosAppsGetCall) Fields(s ...googleapi.Field) *ProjectsIosAppsGetCall { 5759 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5760 return c 5761} 5762 5763// IfNoneMatch sets the optional parameter which makes the operation 5764// fail if the object's ETag matches the given value. This is useful for 5765// getting updates only after the object has changed since the last 5766// request. Use googleapi.IsNotModified to check whether the response 5767// error from Do is the result of In-None-Match. 5768func (c *ProjectsIosAppsGetCall) IfNoneMatch(entityTag string) *ProjectsIosAppsGetCall { 5769 c.ifNoneMatch_ = entityTag 5770 return c 5771} 5772 5773// Context sets the context to be used in this call's Do method. Any 5774// pending HTTP request will be aborted if the provided context is 5775// canceled. 5776func (c *ProjectsIosAppsGetCall) Context(ctx context.Context) *ProjectsIosAppsGetCall { 5777 c.ctx_ = ctx 5778 return c 5779} 5780 5781// Header returns an http.Header that can be modified by the caller to 5782// add HTTP headers to the request. 5783func (c *ProjectsIosAppsGetCall) Header() http.Header { 5784 if c.header_ == nil { 5785 c.header_ = make(http.Header) 5786 } 5787 return c.header_ 5788} 5789 5790func (c *ProjectsIosAppsGetCall) doRequest(alt string) (*http.Response, error) { 5791 reqHeaders := make(http.Header) 5792 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 5793 for k, v := range c.header_ { 5794 reqHeaders[k] = v 5795 } 5796 reqHeaders.Set("User-Agent", c.s.userAgent()) 5797 if c.ifNoneMatch_ != "" { 5798 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5799 } 5800 var body io.Reader = nil 5801 c.urlParams_.Set("alt", alt) 5802 c.urlParams_.Set("prettyPrint", "false") 5803 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 5804 urls += "?" + c.urlParams_.Encode() 5805 req, err := http.NewRequest("GET", urls, body) 5806 if err != nil { 5807 return nil, err 5808 } 5809 req.Header = reqHeaders 5810 googleapi.Expand(req.URL, map[string]string{ 5811 "name": c.nameid, 5812 }) 5813 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5814} 5815 5816// Do executes the "firebase.projects.iosApps.get" call. 5817// Exactly one of *IosApp or error will be non-nil. Any non-2xx status 5818// code is an error. Response headers are in either 5819// *IosApp.ServerResponse.Header or (if a response was returned at all) 5820// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 5821// check whether the returned error was because http.StatusNotModified 5822// was returned. 5823func (c *ProjectsIosAppsGetCall) Do(opts ...googleapi.CallOption) (*IosApp, error) { 5824 gensupport.SetOptions(c.urlParams_, opts...) 5825 res, err := c.doRequest("json") 5826 if res != nil && res.StatusCode == http.StatusNotModified { 5827 if res.Body != nil { 5828 res.Body.Close() 5829 } 5830 return nil, &googleapi.Error{ 5831 Code: res.StatusCode, 5832 Header: res.Header, 5833 } 5834 } 5835 if err != nil { 5836 return nil, err 5837 } 5838 defer googleapi.CloseBody(res) 5839 if err := googleapi.CheckResponse(res); err != nil { 5840 return nil, err 5841 } 5842 ret := &IosApp{ 5843 ServerResponse: googleapi.ServerResponse{ 5844 Header: res.Header, 5845 HTTPStatusCode: res.StatusCode, 5846 }, 5847 } 5848 target := &ret 5849 if err := gensupport.DecodeResponse(target, res); err != nil { 5850 return nil, err 5851 } 5852 return ret, nil 5853 // { 5854 // "description": "Gets the IosApp identified by the specified resource name.", 5855 // "flatPath": "v1beta1/projects/{projectsId}/iosApps/{iosAppsId}", 5856 // "httpMethod": "GET", 5857 // "id": "firebase.projects.iosApps.get", 5858 // "parameterOrder": [ 5859 // "name" 5860 // ], 5861 // "parameters": { 5862 // "name": { 5863 // "description": "The fully qualified resource name of the App, in the format:\n\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/iosApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e\n\u003cbr\u003eAs an \u003cvar\u003eappId\u003c/var\u003e is a unique identifier, the Unique Resource\nfrom Sub-Collection access pattern may be used here, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/-/iosApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 5864 // "location": "path", 5865 // "pattern": "^projects/[^/]+/iosApps/[^/]+$", 5866 // "required": true, 5867 // "type": "string" 5868 // } 5869 // }, 5870 // "path": "v1beta1/{+name}", 5871 // "response": { 5872 // "$ref": "IosApp" 5873 // }, 5874 // "scopes": [ 5875 // "https://www.googleapis.com/auth/cloud-platform", 5876 // "https://www.googleapis.com/auth/cloud-platform.read-only", 5877 // "https://www.googleapis.com/auth/firebase", 5878 // "https://www.googleapis.com/auth/firebase.readonly" 5879 // ] 5880 // } 5881 5882} 5883 5884// method id "firebase.projects.iosApps.getConfig": 5885 5886type ProjectsIosAppsGetConfigCall struct { 5887 s *Service 5888 nameid string 5889 urlParams_ gensupport.URLParams 5890 ifNoneMatch_ string 5891 ctx_ context.Context 5892 header_ http.Header 5893} 5894 5895// GetConfig: Gets the configuration artifact associated with the 5896// specified IosApp. 5897func (r *ProjectsIosAppsService) GetConfig(nameid string) *ProjectsIosAppsGetConfigCall { 5898 c := &ProjectsIosAppsGetConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5899 c.nameid = nameid 5900 return c 5901} 5902 5903// Fields allows partial responses to be retrieved. See 5904// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5905// for more information. 5906func (c *ProjectsIosAppsGetConfigCall) Fields(s ...googleapi.Field) *ProjectsIosAppsGetConfigCall { 5907 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5908 return c 5909} 5910 5911// IfNoneMatch sets the optional parameter which makes the operation 5912// fail if the object's ETag matches the given value. This is useful for 5913// getting updates only after the object has changed since the last 5914// request. Use googleapi.IsNotModified to check whether the response 5915// error from Do is the result of In-None-Match. 5916func (c *ProjectsIosAppsGetConfigCall) IfNoneMatch(entityTag string) *ProjectsIosAppsGetConfigCall { 5917 c.ifNoneMatch_ = entityTag 5918 return c 5919} 5920 5921// Context sets the context to be used in this call's Do method. Any 5922// pending HTTP request will be aborted if the provided context is 5923// canceled. 5924func (c *ProjectsIosAppsGetConfigCall) Context(ctx context.Context) *ProjectsIosAppsGetConfigCall { 5925 c.ctx_ = ctx 5926 return c 5927} 5928 5929// Header returns an http.Header that can be modified by the caller to 5930// add HTTP headers to the request. 5931func (c *ProjectsIosAppsGetConfigCall) Header() http.Header { 5932 if c.header_ == nil { 5933 c.header_ = make(http.Header) 5934 } 5935 return c.header_ 5936} 5937 5938func (c *ProjectsIosAppsGetConfigCall) doRequest(alt string) (*http.Response, error) { 5939 reqHeaders := make(http.Header) 5940 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 5941 for k, v := range c.header_ { 5942 reqHeaders[k] = v 5943 } 5944 reqHeaders.Set("User-Agent", c.s.userAgent()) 5945 if c.ifNoneMatch_ != "" { 5946 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5947 } 5948 var body io.Reader = nil 5949 c.urlParams_.Set("alt", alt) 5950 c.urlParams_.Set("prettyPrint", "false") 5951 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 5952 urls += "?" + c.urlParams_.Encode() 5953 req, err := http.NewRequest("GET", urls, body) 5954 if err != nil { 5955 return nil, err 5956 } 5957 req.Header = reqHeaders 5958 googleapi.Expand(req.URL, map[string]string{ 5959 "name": c.nameid, 5960 }) 5961 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5962} 5963 5964// Do executes the "firebase.projects.iosApps.getConfig" call. 5965// Exactly one of *IosAppConfig or error will be non-nil. Any non-2xx 5966// status code is an error. Response headers are in either 5967// *IosAppConfig.ServerResponse.Header or (if a response was returned at 5968// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5969// to check whether the returned error was because 5970// http.StatusNotModified was returned. 5971func (c *ProjectsIosAppsGetConfigCall) Do(opts ...googleapi.CallOption) (*IosAppConfig, error) { 5972 gensupport.SetOptions(c.urlParams_, opts...) 5973 res, err := c.doRequest("json") 5974 if res != nil && res.StatusCode == http.StatusNotModified { 5975 if res.Body != nil { 5976 res.Body.Close() 5977 } 5978 return nil, &googleapi.Error{ 5979 Code: res.StatusCode, 5980 Header: res.Header, 5981 } 5982 } 5983 if err != nil { 5984 return nil, err 5985 } 5986 defer googleapi.CloseBody(res) 5987 if err := googleapi.CheckResponse(res); err != nil { 5988 return nil, err 5989 } 5990 ret := &IosAppConfig{ 5991 ServerResponse: googleapi.ServerResponse{ 5992 Header: res.Header, 5993 HTTPStatusCode: res.StatusCode, 5994 }, 5995 } 5996 target := &ret 5997 if err := gensupport.DecodeResponse(target, res); err != nil { 5998 return nil, err 5999 } 6000 return ret, nil 6001 // { 6002 // "description": "Gets the configuration artifact associated with the specified IosApp.", 6003 // "flatPath": "v1beta1/projects/{projectsId}/iosApps/{iosAppsId}/config", 6004 // "httpMethod": "GET", 6005 // "id": "firebase.projects.iosApps.getConfig", 6006 // "parameterOrder": [ 6007 // "name" 6008 // ], 6009 // "parameters": { 6010 // "name": { 6011 // "description": "The resource name of the App configuration to download, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/iosApps/\u003cvar\u003eappId\u003c/var\u003e/config\u003c/code\u003e\n\u003cbr\u003eAs an \u003cvar\u003eappId\u003c/var\u003e is a unique identifier, the Unique Resource\nfrom Sub-Collection access pattern may be used here, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/-/iosApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 6012 // "location": "path", 6013 // "pattern": "^projects/[^/]+/iosApps/[^/]+/config$", 6014 // "required": true, 6015 // "type": "string" 6016 // } 6017 // }, 6018 // "path": "v1beta1/{+name}", 6019 // "response": { 6020 // "$ref": "IosAppConfig" 6021 // }, 6022 // "scopes": [ 6023 // "https://www.googleapis.com/auth/cloud-platform" 6024 // ] 6025 // } 6026 6027} 6028 6029// method id "firebase.projects.iosApps.list": 6030 6031type ProjectsIosAppsListCall struct { 6032 s *Service 6033 parent string 6034 urlParams_ gensupport.URLParams 6035 ifNoneMatch_ string 6036 ctx_ context.Context 6037 header_ http.Header 6038} 6039 6040// List: Lists each IosApp associated with the specified parent 6041// Project. 6042// <br> 6043// <br>The elements are returned in no particular order, but will be 6044// a 6045// consistent view of the Apps when additional requests are made with 6046// a 6047// `pageToken`. 6048func (r *ProjectsIosAppsService) List(parent string) *ProjectsIosAppsListCall { 6049 c := &ProjectsIosAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6050 c.parent = parent 6051 return c 6052} 6053 6054// PageSize sets the optional parameter "pageSize": The maximum number 6055// of Apps to return in the response. 6056// <br> 6057// <br>The server may return fewer than this at its discretion. 6058// If no value is specified (or too large a value is specified), the 6059// server 6060// will impose its own limit. 6061func (c *ProjectsIosAppsListCall) PageSize(pageSize int64) *ProjectsIosAppsListCall { 6062 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 6063 return c 6064} 6065 6066// PageToken sets the optional parameter "pageToken": Token returned 6067// from a previous call to `ListIosApps` indicating where in 6068// the set of Apps to resume listing. 6069func (c *ProjectsIosAppsListCall) PageToken(pageToken string) *ProjectsIosAppsListCall { 6070 c.urlParams_.Set("pageToken", pageToken) 6071 return c 6072} 6073 6074// Fields allows partial responses to be retrieved. See 6075// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6076// for more information. 6077func (c *ProjectsIosAppsListCall) Fields(s ...googleapi.Field) *ProjectsIosAppsListCall { 6078 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6079 return c 6080} 6081 6082// IfNoneMatch sets the optional parameter which makes the operation 6083// fail if the object's ETag matches the given value. This is useful for 6084// getting updates only after the object has changed since the last 6085// request. Use googleapi.IsNotModified to check whether the response 6086// error from Do is the result of In-None-Match. 6087func (c *ProjectsIosAppsListCall) IfNoneMatch(entityTag string) *ProjectsIosAppsListCall { 6088 c.ifNoneMatch_ = entityTag 6089 return c 6090} 6091 6092// Context sets the context to be used in this call's Do method. Any 6093// pending HTTP request will be aborted if the provided context is 6094// canceled. 6095func (c *ProjectsIosAppsListCall) Context(ctx context.Context) *ProjectsIosAppsListCall { 6096 c.ctx_ = ctx 6097 return c 6098} 6099 6100// Header returns an http.Header that can be modified by the caller to 6101// add HTTP headers to the request. 6102func (c *ProjectsIosAppsListCall) Header() http.Header { 6103 if c.header_ == nil { 6104 c.header_ = make(http.Header) 6105 } 6106 return c.header_ 6107} 6108 6109func (c *ProjectsIosAppsListCall) doRequest(alt string) (*http.Response, error) { 6110 reqHeaders := make(http.Header) 6111 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 6112 for k, v := range c.header_ { 6113 reqHeaders[k] = v 6114 } 6115 reqHeaders.Set("User-Agent", c.s.userAgent()) 6116 if c.ifNoneMatch_ != "" { 6117 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6118 } 6119 var body io.Reader = nil 6120 c.urlParams_.Set("alt", alt) 6121 c.urlParams_.Set("prettyPrint", "false") 6122 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/iosApps") 6123 urls += "?" + c.urlParams_.Encode() 6124 req, err := http.NewRequest("GET", urls, body) 6125 if err != nil { 6126 return nil, err 6127 } 6128 req.Header = reqHeaders 6129 googleapi.Expand(req.URL, map[string]string{ 6130 "parent": c.parent, 6131 }) 6132 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6133} 6134 6135// Do executes the "firebase.projects.iosApps.list" call. 6136// Exactly one of *ListIosAppsResponse or error will be non-nil. Any 6137// non-2xx status code is an error. Response headers are in either 6138// *ListIosAppsResponse.ServerResponse.Header or (if a response was 6139// returned at all) in error.(*googleapi.Error).Header. Use 6140// googleapi.IsNotModified to check whether the returned error was 6141// because http.StatusNotModified was returned. 6142func (c *ProjectsIosAppsListCall) Do(opts ...googleapi.CallOption) (*ListIosAppsResponse, error) { 6143 gensupport.SetOptions(c.urlParams_, opts...) 6144 res, err := c.doRequest("json") 6145 if res != nil && res.StatusCode == http.StatusNotModified { 6146 if res.Body != nil { 6147 res.Body.Close() 6148 } 6149 return nil, &googleapi.Error{ 6150 Code: res.StatusCode, 6151 Header: res.Header, 6152 } 6153 } 6154 if err != nil { 6155 return nil, err 6156 } 6157 defer googleapi.CloseBody(res) 6158 if err := googleapi.CheckResponse(res); err != nil { 6159 return nil, err 6160 } 6161 ret := &ListIosAppsResponse{ 6162 ServerResponse: googleapi.ServerResponse{ 6163 Header: res.Header, 6164 HTTPStatusCode: res.StatusCode, 6165 }, 6166 } 6167 target := &ret 6168 if err := gensupport.DecodeResponse(target, res); err != nil { 6169 return nil, err 6170 } 6171 return ret, nil 6172 // { 6173 // "description": "Lists each IosApp associated with the specified parent Project.\n\u003cbr\u003e\n\u003cbr\u003eThe elements are returned in no particular order, but will be a\nconsistent view of the Apps when additional requests are made with a\n`pageToken`.", 6174 // "flatPath": "v1beta1/projects/{projectsId}/iosApps", 6175 // "httpMethod": "GET", 6176 // "id": "firebase.projects.iosApps.list", 6177 // "parameterOrder": [ 6178 // "parent" 6179 // ], 6180 // "parameters": { 6181 // "pageSize": { 6182 // "description": "The maximum number of Apps to return in the response.\n\u003cbr\u003e\n\u003cbr\u003eThe server may return fewer than this at its discretion.\nIf no value is specified (or too large a value is specified), the server\nwill impose its own limit.", 6183 // "format": "int32", 6184 // "location": "query", 6185 // "type": "integer" 6186 // }, 6187 // "pageToken": { 6188 // "description": "Token returned from a previous call to `ListIosApps` indicating where in\nthe set of Apps to resume listing.", 6189 // "location": "query", 6190 // "type": "string" 6191 // }, 6192 // "parent": { 6193 // "description": "The parent Project for which to list Apps, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 6194 // "location": "path", 6195 // "pattern": "^projects/[^/]+$", 6196 // "required": true, 6197 // "type": "string" 6198 // } 6199 // }, 6200 // "path": "v1beta1/{+parent}/iosApps", 6201 // "response": { 6202 // "$ref": "ListIosAppsResponse" 6203 // }, 6204 // "scopes": [ 6205 // "https://www.googleapis.com/auth/cloud-platform", 6206 // "https://www.googleapis.com/auth/cloud-platform.read-only", 6207 // "https://www.googleapis.com/auth/firebase", 6208 // "https://www.googleapis.com/auth/firebase.readonly" 6209 // ] 6210 // } 6211 6212} 6213 6214// Pages invokes f for each page of results. 6215// A non-nil error returned from f will halt the iteration. 6216// The provided context supersedes any context provided to the Context method. 6217func (c *ProjectsIosAppsListCall) Pages(ctx context.Context, f func(*ListIosAppsResponse) error) error { 6218 c.ctx_ = ctx 6219 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 6220 for { 6221 x, err := c.Do() 6222 if err != nil { 6223 return err 6224 } 6225 if err := f(x); err != nil { 6226 return err 6227 } 6228 if x.NextPageToken == "" { 6229 return nil 6230 } 6231 c.PageToken(x.NextPageToken) 6232 } 6233} 6234 6235// method id "firebase.projects.iosApps.patch": 6236 6237type ProjectsIosAppsPatchCall struct { 6238 s *Service 6239 name string 6240 iosapp *IosApp 6241 urlParams_ gensupport.URLParams 6242 ctx_ context.Context 6243 header_ http.Header 6244} 6245 6246// Patch: Updates the attributes of the IosApp identified by the 6247// specified 6248// resource name. 6249func (r *ProjectsIosAppsService) Patch(name string, iosapp *IosApp) *ProjectsIosAppsPatchCall { 6250 c := &ProjectsIosAppsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6251 c.name = name 6252 c.iosapp = iosapp 6253 return c 6254} 6255 6256// UpdateMask sets the optional parameter "updateMask": Specifies which 6257// fields to update. 6258// <br>Note that the fields `name`, `appId`, `projectId`, and 6259// `bundleId` 6260// are all immutable. 6261func (c *ProjectsIosAppsPatchCall) UpdateMask(updateMask string) *ProjectsIosAppsPatchCall { 6262 c.urlParams_.Set("updateMask", updateMask) 6263 return c 6264} 6265 6266// Fields allows partial responses to be retrieved. See 6267// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6268// for more information. 6269func (c *ProjectsIosAppsPatchCall) Fields(s ...googleapi.Field) *ProjectsIosAppsPatchCall { 6270 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6271 return c 6272} 6273 6274// Context sets the context to be used in this call's Do method. Any 6275// pending HTTP request will be aborted if the provided context is 6276// canceled. 6277func (c *ProjectsIosAppsPatchCall) Context(ctx context.Context) *ProjectsIosAppsPatchCall { 6278 c.ctx_ = ctx 6279 return c 6280} 6281 6282// Header returns an http.Header that can be modified by the caller to 6283// add HTTP headers to the request. 6284func (c *ProjectsIosAppsPatchCall) Header() http.Header { 6285 if c.header_ == nil { 6286 c.header_ = make(http.Header) 6287 } 6288 return c.header_ 6289} 6290 6291func (c *ProjectsIosAppsPatchCall) doRequest(alt string) (*http.Response, error) { 6292 reqHeaders := make(http.Header) 6293 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 6294 for k, v := range c.header_ { 6295 reqHeaders[k] = v 6296 } 6297 reqHeaders.Set("User-Agent", c.s.userAgent()) 6298 var body io.Reader = nil 6299 body, err := googleapi.WithoutDataWrapper.JSONReader(c.iosapp) 6300 if err != nil { 6301 return nil, err 6302 } 6303 reqHeaders.Set("Content-Type", "application/json") 6304 c.urlParams_.Set("alt", alt) 6305 c.urlParams_.Set("prettyPrint", "false") 6306 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 6307 urls += "?" + c.urlParams_.Encode() 6308 req, err := http.NewRequest("PATCH", urls, body) 6309 if err != nil { 6310 return nil, err 6311 } 6312 req.Header = reqHeaders 6313 googleapi.Expand(req.URL, map[string]string{ 6314 "name": c.name, 6315 }) 6316 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6317} 6318 6319// Do executes the "firebase.projects.iosApps.patch" call. 6320// Exactly one of *IosApp or error will be non-nil. Any non-2xx status 6321// code is an error. Response headers are in either 6322// *IosApp.ServerResponse.Header or (if a response was returned at all) 6323// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6324// check whether the returned error was because http.StatusNotModified 6325// was returned. 6326func (c *ProjectsIosAppsPatchCall) Do(opts ...googleapi.CallOption) (*IosApp, error) { 6327 gensupport.SetOptions(c.urlParams_, opts...) 6328 res, err := c.doRequest("json") 6329 if res != nil && res.StatusCode == http.StatusNotModified { 6330 if res.Body != nil { 6331 res.Body.Close() 6332 } 6333 return nil, &googleapi.Error{ 6334 Code: res.StatusCode, 6335 Header: res.Header, 6336 } 6337 } 6338 if err != nil { 6339 return nil, err 6340 } 6341 defer googleapi.CloseBody(res) 6342 if err := googleapi.CheckResponse(res); err != nil { 6343 return nil, err 6344 } 6345 ret := &IosApp{ 6346 ServerResponse: googleapi.ServerResponse{ 6347 Header: res.Header, 6348 HTTPStatusCode: res.StatusCode, 6349 }, 6350 } 6351 target := &ret 6352 if err := gensupport.DecodeResponse(target, res); err != nil { 6353 return nil, err 6354 } 6355 return ret, nil 6356 // { 6357 // "description": "Updates the attributes of the IosApp identified by the specified\nresource name.", 6358 // "flatPath": "v1beta1/projects/{projectsId}/iosApps/{iosAppsId}", 6359 // "httpMethod": "PATCH", 6360 // "id": "firebase.projects.iosApps.patch", 6361 // "parameterOrder": [ 6362 // "name" 6363 // ], 6364 // "parameters": { 6365 // "name": { 6366 // "description": "The fully qualified resource name of the App, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/iosApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 6367 // "location": "path", 6368 // "pattern": "^projects/[^/]+/iosApps/[^/]+$", 6369 // "required": true, 6370 // "type": "string" 6371 // }, 6372 // "updateMask": { 6373 // "description": "Specifies which fields to update.\n\u003cbr\u003eNote that the fields `name`, `appId`, `projectId`, and `bundleId`\nare all immutable.", 6374 // "format": "google-fieldmask", 6375 // "location": "query", 6376 // "type": "string" 6377 // } 6378 // }, 6379 // "path": "v1beta1/{+name}", 6380 // "request": { 6381 // "$ref": "IosApp" 6382 // }, 6383 // "response": { 6384 // "$ref": "IosApp" 6385 // }, 6386 // "scopes": [ 6387 // "https://www.googleapis.com/auth/cloud-platform", 6388 // "https://www.googleapis.com/auth/firebase" 6389 // ] 6390 // } 6391 6392} 6393 6394// method id "firebase.projects.webApps.create": 6395 6396type ProjectsWebAppsCreateCall struct { 6397 s *Service 6398 parent string 6399 webapp *WebApp 6400 urlParams_ gensupport.URLParams 6401 ctx_ context.Context 6402 header_ http.Header 6403} 6404 6405// Create: Requests that a new WebApp be created. 6406// <br> 6407// <br>The result of this call is an `Operation` which can be used to 6408// track 6409// the provisioning process. The `Operation` is automatically deleted 6410// after 6411// completion, so there is no need to call `DeleteOperation`. 6412func (r *ProjectsWebAppsService) Create(parent string, webapp *WebApp) *ProjectsWebAppsCreateCall { 6413 c := &ProjectsWebAppsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6414 c.parent = parent 6415 c.webapp = webapp 6416 return c 6417} 6418 6419// Fields allows partial responses to be retrieved. See 6420// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6421// for more information. 6422func (c *ProjectsWebAppsCreateCall) Fields(s ...googleapi.Field) *ProjectsWebAppsCreateCall { 6423 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6424 return c 6425} 6426 6427// Context sets the context to be used in this call's Do method. Any 6428// pending HTTP request will be aborted if the provided context is 6429// canceled. 6430func (c *ProjectsWebAppsCreateCall) Context(ctx context.Context) *ProjectsWebAppsCreateCall { 6431 c.ctx_ = ctx 6432 return c 6433} 6434 6435// Header returns an http.Header that can be modified by the caller to 6436// add HTTP headers to the request. 6437func (c *ProjectsWebAppsCreateCall) Header() http.Header { 6438 if c.header_ == nil { 6439 c.header_ = make(http.Header) 6440 } 6441 return c.header_ 6442} 6443 6444func (c *ProjectsWebAppsCreateCall) doRequest(alt string) (*http.Response, error) { 6445 reqHeaders := make(http.Header) 6446 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 6447 for k, v := range c.header_ { 6448 reqHeaders[k] = v 6449 } 6450 reqHeaders.Set("User-Agent", c.s.userAgent()) 6451 var body io.Reader = nil 6452 body, err := googleapi.WithoutDataWrapper.JSONReader(c.webapp) 6453 if err != nil { 6454 return nil, err 6455 } 6456 reqHeaders.Set("Content-Type", "application/json") 6457 c.urlParams_.Set("alt", alt) 6458 c.urlParams_.Set("prettyPrint", "false") 6459 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/webApps") 6460 urls += "?" + c.urlParams_.Encode() 6461 req, err := http.NewRequest("POST", urls, body) 6462 if err != nil { 6463 return nil, err 6464 } 6465 req.Header = reqHeaders 6466 googleapi.Expand(req.URL, map[string]string{ 6467 "parent": c.parent, 6468 }) 6469 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6470} 6471 6472// Do executes the "firebase.projects.webApps.create" call. 6473// Exactly one of *Operation or error will be non-nil. Any non-2xx 6474// status code is an error. Response headers are in either 6475// *Operation.ServerResponse.Header or (if a response was returned at 6476// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 6477// to check whether the returned error was because 6478// http.StatusNotModified was returned. 6479func (c *ProjectsWebAppsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 6480 gensupport.SetOptions(c.urlParams_, opts...) 6481 res, err := c.doRequest("json") 6482 if res != nil && res.StatusCode == http.StatusNotModified { 6483 if res.Body != nil { 6484 res.Body.Close() 6485 } 6486 return nil, &googleapi.Error{ 6487 Code: res.StatusCode, 6488 Header: res.Header, 6489 } 6490 } 6491 if err != nil { 6492 return nil, err 6493 } 6494 defer googleapi.CloseBody(res) 6495 if err := googleapi.CheckResponse(res); err != nil { 6496 return nil, err 6497 } 6498 ret := &Operation{ 6499 ServerResponse: googleapi.ServerResponse{ 6500 Header: res.Header, 6501 HTTPStatusCode: res.StatusCode, 6502 }, 6503 } 6504 target := &ret 6505 if err := gensupport.DecodeResponse(target, res); err != nil { 6506 return nil, err 6507 } 6508 return ret, nil 6509 // { 6510 // "description": "Requests that a new WebApp be created.\n\u003cbr\u003e\n\u003cbr\u003eThe result of this call is an `Operation` which can be used to track\nthe provisioning process. The `Operation` is automatically deleted after\ncompletion, so there is no need to call `DeleteOperation`.", 6511 // "flatPath": "v1beta1/projects/{projectsId}/webApps", 6512 // "httpMethod": "POST", 6513 // "id": "firebase.projects.webApps.create", 6514 // "parameterOrder": [ 6515 // "parent" 6516 // ], 6517 // "parameters": { 6518 // "parent": { 6519 // "description": "The parent Project for which to list Apps, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 6520 // "location": "path", 6521 // "pattern": "^projects/[^/]+$", 6522 // "required": true, 6523 // "type": "string" 6524 // } 6525 // }, 6526 // "path": "v1beta1/{+parent}/webApps", 6527 // "request": { 6528 // "$ref": "WebApp" 6529 // }, 6530 // "response": { 6531 // "$ref": "Operation" 6532 // }, 6533 // "scopes": [ 6534 // "https://www.googleapis.com/auth/cloud-platform", 6535 // "https://www.googleapis.com/auth/firebase" 6536 // ] 6537 // } 6538 6539} 6540 6541// method id "firebase.projects.webApps.get": 6542 6543type ProjectsWebAppsGetCall struct { 6544 s *Service 6545 nameid string 6546 urlParams_ gensupport.URLParams 6547 ifNoneMatch_ string 6548 ctx_ context.Context 6549 header_ http.Header 6550} 6551 6552// Get: Gets the WebApp identified by the specified resource name. 6553func (r *ProjectsWebAppsService) Get(nameid string) *ProjectsWebAppsGetCall { 6554 c := &ProjectsWebAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6555 c.nameid = nameid 6556 return c 6557} 6558 6559// Fields allows partial responses to be retrieved. See 6560// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6561// for more information. 6562func (c *ProjectsWebAppsGetCall) Fields(s ...googleapi.Field) *ProjectsWebAppsGetCall { 6563 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6564 return c 6565} 6566 6567// IfNoneMatch sets the optional parameter which makes the operation 6568// fail if the object's ETag matches the given value. This is useful for 6569// getting updates only after the object has changed since the last 6570// request. Use googleapi.IsNotModified to check whether the response 6571// error from Do is the result of In-None-Match. 6572func (c *ProjectsWebAppsGetCall) IfNoneMatch(entityTag string) *ProjectsWebAppsGetCall { 6573 c.ifNoneMatch_ = entityTag 6574 return c 6575} 6576 6577// Context sets the context to be used in this call's Do method. Any 6578// pending HTTP request will be aborted if the provided context is 6579// canceled. 6580func (c *ProjectsWebAppsGetCall) Context(ctx context.Context) *ProjectsWebAppsGetCall { 6581 c.ctx_ = ctx 6582 return c 6583} 6584 6585// Header returns an http.Header that can be modified by the caller to 6586// add HTTP headers to the request. 6587func (c *ProjectsWebAppsGetCall) Header() http.Header { 6588 if c.header_ == nil { 6589 c.header_ = make(http.Header) 6590 } 6591 return c.header_ 6592} 6593 6594func (c *ProjectsWebAppsGetCall) doRequest(alt string) (*http.Response, error) { 6595 reqHeaders := make(http.Header) 6596 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 6597 for k, v := range c.header_ { 6598 reqHeaders[k] = v 6599 } 6600 reqHeaders.Set("User-Agent", c.s.userAgent()) 6601 if c.ifNoneMatch_ != "" { 6602 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6603 } 6604 var body io.Reader = nil 6605 c.urlParams_.Set("alt", alt) 6606 c.urlParams_.Set("prettyPrint", "false") 6607 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 6608 urls += "?" + c.urlParams_.Encode() 6609 req, err := http.NewRequest("GET", urls, body) 6610 if err != nil { 6611 return nil, err 6612 } 6613 req.Header = reqHeaders 6614 googleapi.Expand(req.URL, map[string]string{ 6615 "name": c.nameid, 6616 }) 6617 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6618} 6619 6620// Do executes the "firebase.projects.webApps.get" call. 6621// Exactly one of *WebApp or error will be non-nil. Any non-2xx status 6622// code is an error. Response headers are in either 6623// *WebApp.ServerResponse.Header or (if a response was returned at all) 6624// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6625// check whether the returned error was because http.StatusNotModified 6626// was returned. 6627func (c *ProjectsWebAppsGetCall) Do(opts ...googleapi.CallOption) (*WebApp, error) { 6628 gensupport.SetOptions(c.urlParams_, opts...) 6629 res, err := c.doRequest("json") 6630 if res != nil && res.StatusCode == http.StatusNotModified { 6631 if res.Body != nil { 6632 res.Body.Close() 6633 } 6634 return nil, &googleapi.Error{ 6635 Code: res.StatusCode, 6636 Header: res.Header, 6637 } 6638 } 6639 if err != nil { 6640 return nil, err 6641 } 6642 defer googleapi.CloseBody(res) 6643 if err := googleapi.CheckResponse(res); err != nil { 6644 return nil, err 6645 } 6646 ret := &WebApp{ 6647 ServerResponse: googleapi.ServerResponse{ 6648 Header: res.Header, 6649 HTTPStatusCode: res.StatusCode, 6650 }, 6651 } 6652 target := &ret 6653 if err := gensupport.DecodeResponse(target, res); err != nil { 6654 return nil, err 6655 } 6656 return ret, nil 6657 // { 6658 // "description": "Gets the WebApp identified by the specified resource name.", 6659 // "flatPath": "v1beta1/projects/{projectsId}/webApps/{webAppsId}", 6660 // "httpMethod": "GET", 6661 // "id": "firebase.projects.webApps.get", 6662 // "parameterOrder": [ 6663 // "name" 6664 // ], 6665 // "parameters": { 6666 // "name": { 6667 // "description": "The fully qualified resource name of the App, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/webApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e\n\u003cbr\u003eAs an \u003cvar\u003eappId\u003c/var\u003e is a unique identifier, the Unique Resource\nfrom Sub-Collection access pattern may be used here, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/-/webApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 6668 // "location": "path", 6669 // "pattern": "^projects/[^/]+/webApps/[^/]+$", 6670 // "required": true, 6671 // "type": "string" 6672 // } 6673 // }, 6674 // "path": "v1beta1/{+name}", 6675 // "response": { 6676 // "$ref": "WebApp" 6677 // }, 6678 // "scopes": [ 6679 // "https://www.googleapis.com/auth/cloud-platform", 6680 // "https://www.googleapis.com/auth/cloud-platform.read-only", 6681 // "https://www.googleapis.com/auth/firebase", 6682 // "https://www.googleapis.com/auth/firebase.readonly" 6683 // ] 6684 // } 6685 6686} 6687 6688// method id "firebase.projects.webApps.getConfig": 6689 6690type ProjectsWebAppsGetConfigCall struct { 6691 s *Service 6692 nameid string 6693 urlParams_ gensupport.URLParams 6694 ifNoneMatch_ string 6695 ctx_ context.Context 6696 header_ http.Header 6697} 6698 6699// GetConfig: Gets the configuration artifact associated with the 6700// specified WebApp. 6701func (r *ProjectsWebAppsService) GetConfig(nameid string) *ProjectsWebAppsGetConfigCall { 6702 c := &ProjectsWebAppsGetConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6703 c.nameid = nameid 6704 return c 6705} 6706 6707// Fields allows partial responses to be retrieved. See 6708// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6709// for more information. 6710func (c *ProjectsWebAppsGetConfigCall) Fields(s ...googleapi.Field) *ProjectsWebAppsGetConfigCall { 6711 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6712 return c 6713} 6714 6715// IfNoneMatch sets the optional parameter which makes the operation 6716// fail if the object's ETag matches the given value. This is useful for 6717// getting updates only after the object has changed since the last 6718// request. Use googleapi.IsNotModified to check whether the response 6719// error from Do is the result of In-None-Match. 6720func (c *ProjectsWebAppsGetConfigCall) IfNoneMatch(entityTag string) *ProjectsWebAppsGetConfigCall { 6721 c.ifNoneMatch_ = entityTag 6722 return c 6723} 6724 6725// Context sets the context to be used in this call's Do method. Any 6726// pending HTTP request will be aborted if the provided context is 6727// canceled. 6728func (c *ProjectsWebAppsGetConfigCall) Context(ctx context.Context) *ProjectsWebAppsGetConfigCall { 6729 c.ctx_ = ctx 6730 return c 6731} 6732 6733// Header returns an http.Header that can be modified by the caller to 6734// add HTTP headers to the request. 6735func (c *ProjectsWebAppsGetConfigCall) Header() http.Header { 6736 if c.header_ == nil { 6737 c.header_ = make(http.Header) 6738 } 6739 return c.header_ 6740} 6741 6742func (c *ProjectsWebAppsGetConfigCall) doRequest(alt string) (*http.Response, error) { 6743 reqHeaders := make(http.Header) 6744 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 6745 for k, v := range c.header_ { 6746 reqHeaders[k] = v 6747 } 6748 reqHeaders.Set("User-Agent", c.s.userAgent()) 6749 if c.ifNoneMatch_ != "" { 6750 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6751 } 6752 var body io.Reader = nil 6753 c.urlParams_.Set("alt", alt) 6754 c.urlParams_.Set("prettyPrint", "false") 6755 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 6756 urls += "?" + c.urlParams_.Encode() 6757 req, err := http.NewRequest("GET", urls, body) 6758 if err != nil { 6759 return nil, err 6760 } 6761 req.Header = reqHeaders 6762 googleapi.Expand(req.URL, map[string]string{ 6763 "name": c.nameid, 6764 }) 6765 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6766} 6767 6768// Do executes the "firebase.projects.webApps.getConfig" call. 6769// Exactly one of *WebAppConfig or error will be non-nil. Any non-2xx 6770// status code is an error. Response headers are in either 6771// *WebAppConfig.ServerResponse.Header or (if a response was returned at 6772// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 6773// to check whether the returned error was because 6774// http.StatusNotModified was returned. 6775func (c *ProjectsWebAppsGetConfigCall) Do(opts ...googleapi.CallOption) (*WebAppConfig, error) { 6776 gensupport.SetOptions(c.urlParams_, opts...) 6777 res, err := c.doRequest("json") 6778 if res != nil && res.StatusCode == http.StatusNotModified { 6779 if res.Body != nil { 6780 res.Body.Close() 6781 } 6782 return nil, &googleapi.Error{ 6783 Code: res.StatusCode, 6784 Header: res.Header, 6785 } 6786 } 6787 if err != nil { 6788 return nil, err 6789 } 6790 defer googleapi.CloseBody(res) 6791 if err := googleapi.CheckResponse(res); err != nil { 6792 return nil, err 6793 } 6794 ret := &WebAppConfig{ 6795 ServerResponse: googleapi.ServerResponse{ 6796 Header: res.Header, 6797 HTTPStatusCode: res.StatusCode, 6798 }, 6799 } 6800 target := &ret 6801 if err := gensupport.DecodeResponse(target, res); err != nil { 6802 return nil, err 6803 } 6804 return ret, nil 6805 // { 6806 // "description": "Gets the configuration artifact associated with the specified WebApp.", 6807 // "flatPath": "v1beta1/projects/{projectsId}/webApps/{webAppsId}/config", 6808 // "httpMethod": "GET", 6809 // "id": "firebase.projects.webApps.getConfig", 6810 // "parameterOrder": [ 6811 // "name" 6812 // ], 6813 // "parameters": { 6814 // "name": { 6815 // "description": "The resource name of the App configuration to download, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/webApps/\u003cvar\u003eappId\u003c/var\u003e/config\u003c/code\u003e\n\u003cbr\u003eAs an \u003cvar\u003eappId\u003c/var\u003e is a unique identifier, the Unique Resource\nfrom Sub-Collection access pattern may be used here, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/-/webApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 6816 // "location": "path", 6817 // "pattern": "^projects/[^/]+/webApps/[^/]+/config$", 6818 // "required": true, 6819 // "type": "string" 6820 // } 6821 // }, 6822 // "path": "v1beta1/{+name}", 6823 // "response": { 6824 // "$ref": "WebAppConfig" 6825 // }, 6826 // "scopes": [ 6827 // "https://www.googleapis.com/auth/cloud-platform" 6828 // ] 6829 // } 6830 6831} 6832 6833// method id "firebase.projects.webApps.list": 6834 6835type ProjectsWebAppsListCall struct { 6836 s *Service 6837 parent string 6838 urlParams_ gensupport.URLParams 6839 ifNoneMatch_ string 6840 ctx_ context.Context 6841 header_ http.Header 6842} 6843 6844// List: Lists each WebApp associated with the specified parent 6845// Project. 6846// <br> 6847// <br>The elements are returned in no particular order, but will be 6848// a 6849// consistent view of the Apps when additional requests are made with 6850// a 6851// `pageToken`. 6852func (r *ProjectsWebAppsService) List(parent string) *ProjectsWebAppsListCall { 6853 c := &ProjectsWebAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6854 c.parent = parent 6855 return c 6856} 6857 6858// PageSize sets the optional parameter "pageSize": The maximum number 6859// of Apps to return in the response. 6860// <br> 6861// <br>The server may return fewer than this value at its discretion. 6862// If no value is specified (or too large a value is specified), then 6863// the 6864// server will impose its own limit. 6865func (c *ProjectsWebAppsListCall) PageSize(pageSize int64) *ProjectsWebAppsListCall { 6866 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 6867 return c 6868} 6869 6870// PageToken sets the optional parameter "pageToken": Token returned 6871// from a previous call to `ListWebApps` indicating where in 6872// the set of Apps to resume listing. 6873func (c *ProjectsWebAppsListCall) PageToken(pageToken string) *ProjectsWebAppsListCall { 6874 c.urlParams_.Set("pageToken", pageToken) 6875 return c 6876} 6877 6878// Fields allows partial responses to be retrieved. See 6879// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6880// for more information. 6881func (c *ProjectsWebAppsListCall) Fields(s ...googleapi.Field) *ProjectsWebAppsListCall { 6882 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6883 return c 6884} 6885 6886// IfNoneMatch sets the optional parameter which makes the operation 6887// fail if the object's ETag matches the given value. This is useful for 6888// getting updates only after the object has changed since the last 6889// request. Use googleapi.IsNotModified to check whether the response 6890// error from Do is the result of In-None-Match. 6891func (c *ProjectsWebAppsListCall) IfNoneMatch(entityTag string) *ProjectsWebAppsListCall { 6892 c.ifNoneMatch_ = entityTag 6893 return c 6894} 6895 6896// Context sets the context to be used in this call's Do method. Any 6897// pending HTTP request will be aborted if the provided context is 6898// canceled. 6899func (c *ProjectsWebAppsListCall) Context(ctx context.Context) *ProjectsWebAppsListCall { 6900 c.ctx_ = ctx 6901 return c 6902} 6903 6904// Header returns an http.Header that can be modified by the caller to 6905// add HTTP headers to the request. 6906func (c *ProjectsWebAppsListCall) Header() http.Header { 6907 if c.header_ == nil { 6908 c.header_ = make(http.Header) 6909 } 6910 return c.header_ 6911} 6912 6913func (c *ProjectsWebAppsListCall) doRequest(alt string) (*http.Response, error) { 6914 reqHeaders := make(http.Header) 6915 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 6916 for k, v := range c.header_ { 6917 reqHeaders[k] = v 6918 } 6919 reqHeaders.Set("User-Agent", c.s.userAgent()) 6920 if c.ifNoneMatch_ != "" { 6921 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6922 } 6923 var body io.Reader = nil 6924 c.urlParams_.Set("alt", alt) 6925 c.urlParams_.Set("prettyPrint", "false") 6926 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/webApps") 6927 urls += "?" + c.urlParams_.Encode() 6928 req, err := http.NewRequest("GET", urls, body) 6929 if err != nil { 6930 return nil, err 6931 } 6932 req.Header = reqHeaders 6933 googleapi.Expand(req.URL, map[string]string{ 6934 "parent": c.parent, 6935 }) 6936 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6937} 6938 6939// Do executes the "firebase.projects.webApps.list" call. 6940// Exactly one of *ListWebAppsResponse or error will be non-nil. Any 6941// non-2xx status code is an error. Response headers are in either 6942// *ListWebAppsResponse.ServerResponse.Header or (if a response was 6943// returned at all) in error.(*googleapi.Error).Header. Use 6944// googleapi.IsNotModified to check whether the returned error was 6945// because http.StatusNotModified was returned. 6946func (c *ProjectsWebAppsListCall) Do(opts ...googleapi.CallOption) (*ListWebAppsResponse, error) { 6947 gensupport.SetOptions(c.urlParams_, opts...) 6948 res, err := c.doRequest("json") 6949 if res != nil && res.StatusCode == http.StatusNotModified { 6950 if res.Body != nil { 6951 res.Body.Close() 6952 } 6953 return nil, &googleapi.Error{ 6954 Code: res.StatusCode, 6955 Header: res.Header, 6956 } 6957 } 6958 if err != nil { 6959 return nil, err 6960 } 6961 defer googleapi.CloseBody(res) 6962 if err := googleapi.CheckResponse(res); err != nil { 6963 return nil, err 6964 } 6965 ret := &ListWebAppsResponse{ 6966 ServerResponse: googleapi.ServerResponse{ 6967 Header: res.Header, 6968 HTTPStatusCode: res.StatusCode, 6969 }, 6970 } 6971 target := &ret 6972 if err := gensupport.DecodeResponse(target, res); err != nil { 6973 return nil, err 6974 } 6975 return ret, nil 6976 // { 6977 // "description": "Lists each WebApp associated with the specified parent Project.\n\u003cbr\u003e\n\u003cbr\u003eThe elements are returned in no particular order, but will be a\nconsistent view of the Apps when additional requests are made with a\n`pageToken`.", 6978 // "flatPath": "v1beta1/projects/{projectsId}/webApps", 6979 // "httpMethod": "GET", 6980 // "id": "firebase.projects.webApps.list", 6981 // "parameterOrder": [ 6982 // "parent" 6983 // ], 6984 // "parameters": { 6985 // "pageSize": { 6986 // "description": "The maximum number of Apps to return in the response.\n\u003cbr\u003e\n\u003cbr\u003eThe server may return fewer than this value at its discretion.\nIf no value is specified (or too large a value is specified), then the\nserver will impose its own limit.", 6987 // "format": "int32", 6988 // "location": "query", 6989 // "type": "integer" 6990 // }, 6991 // "pageToken": { 6992 // "description": "Token returned from a previous call to `ListWebApps` indicating where in\nthe set of Apps to resume listing.", 6993 // "location": "query", 6994 // "type": "string" 6995 // }, 6996 // "parent": { 6997 // "description": "The parent Project for which to list Apps, in the format:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e\u003c/code\u003e", 6998 // "location": "path", 6999 // "pattern": "^projects/[^/]+$", 7000 // "required": true, 7001 // "type": "string" 7002 // } 7003 // }, 7004 // "path": "v1beta1/{+parent}/webApps", 7005 // "response": { 7006 // "$ref": "ListWebAppsResponse" 7007 // }, 7008 // "scopes": [ 7009 // "https://www.googleapis.com/auth/cloud-platform", 7010 // "https://www.googleapis.com/auth/cloud-platform.read-only", 7011 // "https://www.googleapis.com/auth/firebase", 7012 // "https://www.googleapis.com/auth/firebase.readonly" 7013 // ] 7014 // } 7015 7016} 7017 7018// Pages invokes f for each page of results. 7019// A non-nil error returned from f will halt the iteration. 7020// The provided context supersedes any context provided to the Context method. 7021func (c *ProjectsWebAppsListCall) Pages(ctx context.Context, f func(*ListWebAppsResponse) error) error { 7022 c.ctx_ = ctx 7023 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 7024 for { 7025 x, err := c.Do() 7026 if err != nil { 7027 return err 7028 } 7029 if err := f(x); err != nil { 7030 return err 7031 } 7032 if x.NextPageToken == "" { 7033 return nil 7034 } 7035 c.PageToken(x.NextPageToken) 7036 } 7037} 7038 7039// method id "firebase.projects.webApps.patch": 7040 7041type ProjectsWebAppsPatchCall struct { 7042 s *Service 7043 name string 7044 webapp *WebApp 7045 urlParams_ gensupport.URLParams 7046 ctx_ context.Context 7047 header_ http.Header 7048} 7049 7050// Patch: Updates the attributes of the WebApp identified by the 7051// specified 7052// resource name. 7053func (r *ProjectsWebAppsService) Patch(name string, webapp *WebApp) *ProjectsWebAppsPatchCall { 7054 c := &ProjectsWebAppsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7055 c.name = name 7056 c.webapp = webapp 7057 return c 7058} 7059 7060// UpdateMask sets the optional parameter "updateMask": Specifies which 7061// fields to update. 7062// <br>Note that the fields `name`, `appId`, and `projectId` are 7063// all 7064// immutable. 7065func (c *ProjectsWebAppsPatchCall) UpdateMask(updateMask string) *ProjectsWebAppsPatchCall { 7066 c.urlParams_.Set("updateMask", updateMask) 7067 return c 7068} 7069 7070// Fields allows partial responses to be retrieved. See 7071// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7072// for more information. 7073func (c *ProjectsWebAppsPatchCall) Fields(s ...googleapi.Field) *ProjectsWebAppsPatchCall { 7074 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7075 return c 7076} 7077 7078// Context sets the context to be used in this call's Do method. Any 7079// pending HTTP request will be aborted if the provided context is 7080// canceled. 7081func (c *ProjectsWebAppsPatchCall) Context(ctx context.Context) *ProjectsWebAppsPatchCall { 7082 c.ctx_ = ctx 7083 return c 7084} 7085 7086// Header returns an http.Header that can be modified by the caller to 7087// add HTTP headers to the request. 7088func (c *ProjectsWebAppsPatchCall) Header() http.Header { 7089 if c.header_ == nil { 7090 c.header_ = make(http.Header) 7091 } 7092 return c.header_ 7093} 7094 7095func (c *ProjectsWebAppsPatchCall) doRequest(alt string) (*http.Response, error) { 7096 reqHeaders := make(http.Header) 7097 reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926") 7098 for k, v := range c.header_ { 7099 reqHeaders[k] = v 7100 } 7101 reqHeaders.Set("User-Agent", c.s.userAgent()) 7102 var body io.Reader = nil 7103 body, err := googleapi.WithoutDataWrapper.JSONReader(c.webapp) 7104 if err != nil { 7105 return nil, err 7106 } 7107 reqHeaders.Set("Content-Type", "application/json") 7108 c.urlParams_.Set("alt", alt) 7109 c.urlParams_.Set("prettyPrint", "false") 7110 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 7111 urls += "?" + c.urlParams_.Encode() 7112 req, err := http.NewRequest("PATCH", urls, body) 7113 if err != nil { 7114 return nil, err 7115 } 7116 req.Header = reqHeaders 7117 googleapi.Expand(req.URL, map[string]string{ 7118 "name": c.name, 7119 }) 7120 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7121} 7122 7123// Do executes the "firebase.projects.webApps.patch" call. 7124// Exactly one of *WebApp or error will be non-nil. Any non-2xx status 7125// code is an error. Response headers are in either 7126// *WebApp.ServerResponse.Header or (if a response was returned at all) 7127// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7128// check whether the returned error was because http.StatusNotModified 7129// was returned. 7130func (c *ProjectsWebAppsPatchCall) Do(opts ...googleapi.CallOption) (*WebApp, error) { 7131 gensupport.SetOptions(c.urlParams_, opts...) 7132 res, err := c.doRequest("json") 7133 if res != nil && res.StatusCode == http.StatusNotModified { 7134 if res.Body != nil { 7135 res.Body.Close() 7136 } 7137 return nil, &googleapi.Error{ 7138 Code: res.StatusCode, 7139 Header: res.Header, 7140 } 7141 } 7142 if err != nil { 7143 return nil, err 7144 } 7145 defer googleapi.CloseBody(res) 7146 if err := googleapi.CheckResponse(res); err != nil { 7147 return nil, err 7148 } 7149 ret := &WebApp{ 7150 ServerResponse: googleapi.ServerResponse{ 7151 Header: res.Header, 7152 HTTPStatusCode: res.StatusCode, 7153 }, 7154 } 7155 target := &ret 7156 if err := gensupport.DecodeResponse(target, res); err != nil { 7157 return nil, err 7158 } 7159 return ret, nil 7160 // { 7161 // "description": "Updates the attributes of the WebApp identified by the specified\nresource name.", 7162 // "flatPath": "v1beta1/projects/{projectsId}/webApps/{webAppsId}", 7163 // "httpMethod": "PATCH", 7164 // "id": "firebase.projects.webApps.patch", 7165 // "parameterOrder": [ 7166 // "name" 7167 // ], 7168 // "parameters": { 7169 // "name": { 7170 // "description": "The fully qualified resource name of the App, for example:\n\u003cbr\u003e\u003ccode\u003eprojects/\u003cvar\u003eprojectId\u003c/var\u003e/webApps/\u003cvar\u003eappId\u003c/var\u003e\u003c/code\u003e", 7171 // "location": "path", 7172 // "pattern": "^projects/[^/]+/webApps/[^/]+$", 7173 // "required": true, 7174 // "type": "string" 7175 // }, 7176 // "updateMask": { 7177 // "description": "Specifies which fields to update.\n\u003cbr\u003eNote that the fields `name`, `appId`, and `projectId` are all\nimmutable.", 7178 // "format": "google-fieldmask", 7179 // "location": "query", 7180 // "type": "string" 7181 // } 7182 // }, 7183 // "path": "v1beta1/{+name}", 7184 // "request": { 7185 // "$ref": "WebApp" 7186 // }, 7187 // "response": { 7188 // "$ref": "WebApp" 7189 // }, 7190 // "scopes": [ 7191 // "https://www.googleapis.com/auth/cloud-platform", 7192 // "https://www.googleapis.com/auth/firebase" 7193 // ] 7194 // } 7195 7196} 7197