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