...

Source file src/google.golang.org/api/appengine/v1/appengine-gen.go

Documentation: google.golang.org/api/appengine/v1

     1  // Copyright 2024 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 appengine provides access to the App Engine Admin API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/appengine/docs/admin-api/
    10  //
    11  // # Library status
    12  //
    13  // These client libraries are officially supported by Google. However, this
    14  // library is considered complete and is in maintenance mode. This means
    15  // that we will address critical bugs and security issues but will not add
    16  // any new features.
    17  //
    18  // When possible, we recommend using our newer
    19  // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
    20  // that are still actively being worked and iterated on.
    21  //
    22  // # Creating a client
    23  //
    24  // Usage example:
    25  //
    26  //	import "google.golang.org/api/appengine/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	appengineService, err := appengine.NewService(ctx)
    30  //
    31  // In this example, Google Application Default Credentials are used for
    32  // authentication. For information on how to create and obtain Application
    33  // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    34  //
    35  // # Other authentication options
    36  //
    37  // By default, all available scopes (see "Constants") are used to authenticate.
    38  // To restrict scopes, use [google.golang.org/api/option.WithScopes]:
    39  //
    40  //	appengineService, err := appengine.NewService(ctx, option.WithScopes(appengine.CloudPlatformReadOnlyScope))
    41  //
    42  // To use an API key for authentication (note: some APIs do not support API
    43  // keys), use [google.golang.org/api/option.WithAPIKey]:
    44  //
    45  //	appengineService, err := appengine.NewService(ctx, option.WithAPIKey("AIza..."))
    46  //
    47  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
    48  // flow, use [google.golang.org/api/option.WithTokenSource]:
    49  //
    50  //	config := &oauth2.Config{...}
    51  //	// ...
    52  //	token, err := config.Exchange(ctx, ...)
    53  //	appengineService, err := appengine.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    54  //
    55  // See [google.golang.org/api/option.ClientOption] for details on options.
    56  package appengine // import "google.golang.org/api/appengine/v1"
    57  
    58  import (
    59  	"bytes"
    60  	"context"
    61  	"encoding/json"
    62  	"errors"
    63  	"fmt"
    64  	"io"
    65  	"net/http"
    66  	"net/url"
    67  	"strconv"
    68  	"strings"
    69  
    70  	googleapi "google.golang.org/api/googleapi"
    71  	internal "google.golang.org/api/internal"
    72  	gensupport "google.golang.org/api/internal/gensupport"
    73  	option "google.golang.org/api/option"
    74  	internaloption "google.golang.org/api/option/internaloption"
    75  	htransport "google.golang.org/api/transport/http"
    76  )
    77  
    78  // Always reference these packages, just in case the auto-generated code
    79  // below doesn't.
    80  var _ = bytes.NewBuffer
    81  var _ = strconv.Itoa
    82  var _ = fmt.Sprintf
    83  var _ = json.NewDecoder
    84  var _ = io.Copy
    85  var _ = url.Parse
    86  var _ = gensupport.MarshalJSON
    87  var _ = googleapi.Version
    88  var _ = errors.New
    89  var _ = strings.Replace
    90  var _ = context.Canceled
    91  var _ = internaloption.WithDefaultEndpoint
    92  var _ = internal.Version
    93  
    94  const apiId = "appengine:v1"
    95  const apiName = "appengine"
    96  const apiVersion = "v1"
    97  const basePath = "https://appengine.googleapis.com/"
    98  const basePathTemplate = "https://appengine.UNIVERSE_DOMAIN/"
    99  const mtlsBasePath = "https://appengine.mtls.googleapis.com/"
   100  
   101  // OAuth2 scopes used by this API.
   102  const (
   103  	// View and manage your applications deployed on Google App Engine
   104  	AppengineAdminScope = "https://www.googleapis.com/auth/appengine.admin"
   105  
   106  	// See, edit, configure, and delete your Google Cloud data and see the email
   107  	// address for your Google Account.
   108  	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
   109  
   110  	// View your data across Google Cloud services and see the email address of
   111  	// your Google Account
   112  	CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only"
   113  )
   114  
   115  // NewService creates a new APIService.
   116  func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
   117  	scopesOption := internaloption.WithDefaultScopes(
   118  		"https://www.googleapis.com/auth/appengine.admin",
   119  		"https://www.googleapis.com/auth/cloud-platform",
   120  		"https://www.googleapis.com/auth/cloud-platform.read-only",
   121  	)
   122  	// NOTE: prepend, so we don't override user-specified scopes.
   123  	opts = append([]option.ClientOption{scopesOption}, opts...)
   124  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   125  	opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
   126  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
   127  	opts = append(opts, internaloption.EnableNewAuthLibrary())
   128  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   129  	if err != nil {
   130  		return nil, err
   131  	}
   132  	s, err := New(client)
   133  	if err != nil {
   134  		return nil, err
   135  	}
   136  	if endpoint != "" {
   137  		s.BasePath = endpoint
   138  	}
   139  	return s, nil
   140  }
   141  
   142  // New creates a new APIService. It uses the provided http.Client for requests.
   143  //
   144  // Deprecated: please use NewService instead.
   145  // To provide a custom HTTP client, use option.WithHTTPClient.
   146  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   147  func New(client *http.Client) (*APIService, error) {
   148  	if client == nil {
   149  		return nil, errors.New("client is nil")
   150  	}
   151  	s := &APIService{client: client, BasePath: basePath}
   152  	s.Apps = NewAppsService(s)
   153  	s.Projects = NewProjectsService(s)
   154  	return s, nil
   155  }
   156  
   157  type APIService struct {
   158  	client    *http.Client
   159  	BasePath  string // API endpoint base URL
   160  	UserAgent string // optional additional User-Agent fragment
   161  
   162  	Apps *AppsService
   163  
   164  	Projects *ProjectsService
   165  }
   166  
   167  func (s *APIService) userAgent() string {
   168  	if s.UserAgent == "" {
   169  		return googleapi.UserAgent
   170  	}
   171  	return googleapi.UserAgent + " " + s.UserAgent
   172  }
   173  
   174  func NewAppsService(s *APIService) *AppsService {
   175  	rs := &AppsService{s: s}
   176  	rs.AuthorizedCertificates = NewAppsAuthorizedCertificatesService(s)
   177  	rs.AuthorizedDomains = NewAppsAuthorizedDomainsService(s)
   178  	rs.DomainMappings = NewAppsDomainMappingsService(s)
   179  	rs.Firewall = NewAppsFirewallService(s)
   180  	rs.Locations = NewAppsLocationsService(s)
   181  	rs.Operations = NewAppsOperationsService(s)
   182  	rs.Services = NewAppsServicesService(s)
   183  	return rs
   184  }
   185  
   186  type AppsService struct {
   187  	s *APIService
   188  
   189  	AuthorizedCertificates *AppsAuthorizedCertificatesService
   190  
   191  	AuthorizedDomains *AppsAuthorizedDomainsService
   192  
   193  	DomainMappings *AppsDomainMappingsService
   194  
   195  	Firewall *AppsFirewallService
   196  
   197  	Locations *AppsLocationsService
   198  
   199  	Operations *AppsOperationsService
   200  
   201  	Services *AppsServicesService
   202  }
   203  
   204  func NewAppsAuthorizedCertificatesService(s *APIService) *AppsAuthorizedCertificatesService {
   205  	rs := &AppsAuthorizedCertificatesService{s: s}
   206  	return rs
   207  }
   208  
   209  type AppsAuthorizedCertificatesService struct {
   210  	s *APIService
   211  }
   212  
   213  func NewAppsAuthorizedDomainsService(s *APIService) *AppsAuthorizedDomainsService {
   214  	rs := &AppsAuthorizedDomainsService{s: s}
   215  	return rs
   216  }
   217  
   218  type AppsAuthorizedDomainsService struct {
   219  	s *APIService
   220  }
   221  
   222  func NewAppsDomainMappingsService(s *APIService) *AppsDomainMappingsService {
   223  	rs := &AppsDomainMappingsService{s: s}
   224  	return rs
   225  }
   226  
   227  type AppsDomainMappingsService struct {
   228  	s *APIService
   229  }
   230  
   231  func NewAppsFirewallService(s *APIService) *AppsFirewallService {
   232  	rs := &AppsFirewallService{s: s}
   233  	rs.IngressRules = NewAppsFirewallIngressRulesService(s)
   234  	return rs
   235  }
   236  
   237  type AppsFirewallService struct {
   238  	s *APIService
   239  
   240  	IngressRules *AppsFirewallIngressRulesService
   241  }
   242  
   243  func NewAppsFirewallIngressRulesService(s *APIService) *AppsFirewallIngressRulesService {
   244  	rs := &AppsFirewallIngressRulesService{s: s}
   245  	return rs
   246  }
   247  
   248  type AppsFirewallIngressRulesService struct {
   249  	s *APIService
   250  }
   251  
   252  func NewAppsLocationsService(s *APIService) *AppsLocationsService {
   253  	rs := &AppsLocationsService{s: s}
   254  	return rs
   255  }
   256  
   257  type AppsLocationsService struct {
   258  	s *APIService
   259  }
   260  
   261  func NewAppsOperationsService(s *APIService) *AppsOperationsService {
   262  	rs := &AppsOperationsService{s: s}
   263  	return rs
   264  }
   265  
   266  type AppsOperationsService struct {
   267  	s *APIService
   268  }
   269  
   270  func NewAppsServicesService(s *APIService) *AppsServicesService {
   271  	rs := &AppsServicesService{s: s}
   272  	rs.Versions = NewAppsServicesVersionsService(s)
   273  	return rs
   274  }
   275  
   276  type AppsServicesService struct {
   277  	s *APIService
   278  
   279  	Versions *AppsServicesVersionsService
   280  }
   281  
   282  func NewAppsServicesVersionsService(s *APIService) *AppsServicesVersionsService {
   283  	rs := &AppsServicesVersionsService{s: s}
   284  	rs.Instances = NewAppsServicesVersionsInstancesService(s)
   285  	return rs
   286  }
   287  
   288  type AppsServicesVersionsService struct {
   289  	s *APIService
   290  
   291  	Instances *AppsServicesVersionsInstancesService
   292  }
   293  
   294  func NewAppsServicesVersionsInstancesService(s *APIService) *AppsServicesVersionsInstancesService {
   295  	rs := &AppsServicesVersionsInstancesService{s: s}
   296  	return rs
   297  }
   298  
   299  type AppsServicesVersionsInstancesService struct {
   300  	s *APIService
   301  }
   302  
   303  func NewProjectsService(s *APIService) *ProjectsService {
   304  	rs := &ProjectsService{s: s}
   305  	rs.Locations = NewProjectsLocationsService(s)
   306  	return rs
   307  }
   308  
   309  type ProjectsService struct {
   310  	s *APIService
   311  
   312  	Locations *ProjectsLocationsService
   313  }
   314  
   315  func NewProjectsLocationsService(s *APIService) *ProjectsLocationsService {
   316  	rs := &ProjectsLocationsService{s: s}
   317  	rs.Applications = NewProjectsLocationsApplicationsService(s)
   318  	return rs
   319  }
   320  
   321  type ProjectsLocationsService struct {
   322  	s *APIService
   323  
   324  	Applications *ProjectsLocationsApplicationsService
   325  }
   326  
   327  func NewProjectsLocationsApplicationsService(s *APIService) *ProjectsLocationsApplicationsService {
   328  	rs := &ProjectsLocationsApplicationsService{s: s}
   329  	rs.AuthorizedDomains = NewProjectsLocationsApplicationsAuthorizedDomainsService(s)
   330  	return rs
   331  }
   332  
   333  type ProjectsLocationsApplicationsService struct {
   334  	s *APIService
   335  
   336  	AuthorizedDomains *ProjectsLocationsApplicationsAuthorizedDomainsService
   337  }
   338  
   339  func NewProjectsLocationsApplicationsAuthorizedDomainsService(s *APIService) *ProjectsLocationsApplicationsAuthorizedDomainsService {
   340  	rs := &ProjectsLocationsApplicationsAuthorizedDomainsService{s: s}
   341  	return rs
   342  }
   343  
   344  type ProjectsLocationsApplicationsAuthorizedDomainsService struct {
   345  	s *APIService
   346  }
   347  
   348  // ApiConfigHandler: Google Cloud Endpoints
   349  // (https://cloud.google.com/endpoints) configuration for API handlers.
   350  type ApiConfigHandler struct {
   351  	// AuthFailAction: Action to take when users access resources that require
   352  	// authentication. Defaults to redirect.
   353  	//
   354  	// Possible values:
   355  	//   "AUTH_FAIL_ACTION_UNSPECIFIED" - Not specified. AUTH_FAIL_ACTION_REDIRECT
   356  	// is assumed.
   357  	//   "AUTH_FAIL_ACTION_REDIRECT" - Redirects user to "accounts.google.com". The
   358  	// user is redirected back to the application URL after signing in or creating
   359  	// an account.
   360  	//   "AUTH_FAIL_ACTION_UNAUTHORIZED" - Rejects request with a 401 HTTP status
   361  	// code and an error message.
   362  	AuthFailAction string `json:"authFailAction,omitempty"`
   363  	// Login: Level of login required to access this resource. Defaults to
   364  	// optional.
   365  	//
   366  	// Possible values:
   367  	//   "LOGIN_UNSPECIFIED" - Not specified. LOGIN_OPTIONAL is assumed.
   368  	//   "LOGIN_OPTIONAL" - Does not require that the user is signed in.
   369  	//   "LOGIN_ADMIN" - If the user is not signed in, the auth_fail_action is
   370  	// taken. In addition, if the user is not an administrator for the application,
   371  	// they are given an error message regardless of auth_fail_action. If the user
   372  	// is an administrator, the handler proceeds.
   373  	//   "LOGIN_REQUIRED" - If the user has signed in, the handler proceeds
   374  	// normally. Otherwise, the auth_fail_action is taken.
   375  	Login string `json:"login,omitempty"`
   376  	// Script: Path to the script from the application root directory.
   377  	Script string `json:"script,omitempty"`
   378  	// SecurityLevel: Security (HTTPS) enforcement for this URL.
   379  	//
   380  	// Possible values:
   381  	//   "SECURE_UNSPECIFIED" - Not specified.
   382  	//   "SECURE_DEFAULT" - Both HTTP and HTTPS requests with URLs that match the
   383  	// handler succeed without redirects. The application can examine the request
   384  	// to determine which protocol was used, and respond accordingly.
   385  	//   "SECURE_NEVER" - Requests for a URL that match this handler that use HTTPS
   386  	// are automatically redirected to the HTTP equivalent URL.
   387  	//   "SECURE_OPTIONAL" - Both HTTP and HTTPS requests with URLs that match the
   388  	// handler succeed without redirects. The application can examine the request
   389  	// to determine which protocol was used and respond accordingly.
   390  	//   "SECURE_ALWAYS" - Requests for a URL that match this handler that do not
   391  	// use HTTPS are automatically redirected to the HTTPS URL with the same path.
   392  	// Query parameters are reserved for the redirect.
   393  	SecurityLevel string `json:"securityLevel,omitempty"`
   394  	// Url: URL to serve the endpoint at.
   395  	Url string `json:"url,omitempty"`
   396  	// ForceSendFields is a list of field names (e.g. "AuthFailAction") to
   397  	// unconditionally include in API requests. By default, fields with empty or
   398  	// default values are omitted from API requests. See
   399  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   400  	// details.
   401  	ForceSendFields []string `json:"-"`
   402  	// NullFields is a list of field names (e.g. "AuthFailAction") to include in
   403  	// API requests with the JSON null value. By default, fields with empty values
   404  	// are omitted from API requests. See
   405  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   406  	NullFields []string `json:"-"`
   407  }
   408  
   409  func (s *ApiConfigHandler) MarshalJSON() ([]byte, error) {
   410  	type NoMethod ApiConfigHandler
   411  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   412  }
   413  
   414  // ApiEndpointHandler: Uses Google Cloud Endpoints to handle requests.
   415  type ApiEndpointHandler struct {
   416  	// ScriptPath: Path to the script from the application root directory.
   417  	ScriptPath string `json:"scriptPath,omitempty"`
   418  	// ForceSendFields is a list of field names (e.g. "ScriptPath") to
   419  	// unconditionally include in API requests. By default, fields with empty or
   420  	// default values are omitted from API requests. See
   421  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   422  	// details.
   423  	ForceSendFields []string `json:"-"`
   424  	// NullFields is a list of field names (e.g. "ScriptPath") to include in API
   425  	// requests with the JSON null value. By default, fields with empty values are
   426  	// omitted from API requests. See
   427  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   428  	NullFields []string `json:"-"`
   429  }
   430  
   431  func (s *ApiEndpointHandler) MarshalJSON() ([]byte, error) {
   432  	type NoMethod ApiEndpointHandler
   433  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   434  }
   435  
   436  // Application: An Application resource contains the top-level configuration of
   437  // an App Engine application.
   438  type Application struct {
   439  	// AuthDomain: Google Apps authentication domain that controls which users can
   440  	// access this application.Defaults to open access for any Google Account.
   441  	AuthDomain string `json:"authDomain,omitempty"`
   442  	// CodeBucket: Output only. Google Cloud Storage bucket that can be used for
   443  	// storing files associated with this application. This bucket is associated
   444  	// with the application and can be used by the gcloud deployment
   445  	// commands.@OutputOnly
   446  	CodeBucket string `json:"codeBucket,omitempty"`
   447  	// DatabaseType: The type of the Cloud Firestore or Cloud Datastore database
   448  	// associated with this application.
   449  	//
   450  	// Possible values:
   451  	//   "DATABASE_TYPE_UNSPECIFIED" - Database type is unspecified.
   452  	//   "CLOUD_DATASTORE" - Cloud Datastore
   453  	//   "CLOUD_FIRESTORE" - Cloud Firestore Native
   454  	//   "CLOUD_DATASTORE_COMPATIBILITY" - Cloud Firestore in Datastore Mode
   455  	DatabaseType string `json:"databaseType,omitempty"`
   456  	// DefaultBucket: Output only. Google Cloud Storage bucket that can be used by
   457  	// this application to store content.@OutputOnly
   458  	DefaultBucket string `json:"defaultBucket,omitempty"`
   459  	// DefaultCookieExpiration: Cookie expiration policy for this application.
   460  	DefaultCookieExpiration string `json:"defaultCookieExpiration,omitempty"`
   461  	// DefaultHostname: Output only. Hostname used to reach this application, as
   462  	// resolved by App Engine.@OutputOnly
   463  	DefaultHostname string `json:"defaultHostname,omitempty"`
   464  	// DispatchRules: HTTP path dispatch rules for requests to the application that
   465  	// do not explicitly target a service or version. Rules are order-dependent. Up
   466  	// to 20 dispatch rules can be supported.
   467  	DispatchRules []*UrlDispatchRule `json:"dispatchRules,omitempty"`
   468  	// FeatureSettings: The feature specific settings to be used in the
   469  	// application.
   470  	FeatureSettings *FeatureSettings `json:"featureSettings,omitempty"`
   471  	// GcrDomain: Output only. The Google Container Registry domain used for
   472  	// storing managed build docker images for this application.
   473  	GcrDomain string `json:"gcrDomain,omitempty"`
   474  	// GeneratedCustomerMetadata: Additional Google Generated Customer Metadata,
   475  	// this field won't be provided by default and can be requested by setting the
   476  	// IncludeExtraData field in GetApplicationRequest
   477  	GeneratedCustomerMetadata googleapi.RawMessage `json:"generatedCustomerMetadata,omitempty"`
   478  	Iap                       *IdentityAwareProxy  `json:"iap,omitempty"`
   479  	// Id: Identifier of the Application resource. This identifier is equivalent to
   480  	// the project ID of the Google Cloud Platform project where you want to deploy
   481  	// your application. Example: myapp.
   482  	Id string `json:"id,omitempty"`
   483  	// LocationId: Location from which this application runs. Application instances
   484  	// run out of the data centers in the specified location, which is also where
   485  	// all of the application's end user content is stored.Defaults to
   486  	// us-central.View the list of supported locations
   487  	// (https://cloud.google.com/appengine/docs/locations).
   488  	LocationId string `json:"locationId,omitempty"`
   489  	// Name: Output only. Full path to the Application resource in the API.
   490  	// Example: apps/myapp.@OutputOnly
   491  	Name string `json:"name,omitempty"`
   492  	// ServiceAccount: The service account associated with the application. This is
   493  	// the app-level default identity. If no identity provided during create
   494  	// version, Admin API will fallback to this one.
   495  	ServiceAccount string `json:"serviceAccount,omitempty"`
   496  	// ServingStatus: Serving status of this application.
   497  	//
   498  	// Possible values:
   499  	//   "UNSPECIFIED" - Serving status is unspecified.
   500  	//   "SERVING" - Application is serving.
   501  	//   "USER_DISABLED" - Application has been disabled by the user.
   502  	//   "SYSTEM_DISABLED" - Application has been disabled by the system.
   503  	ServingStatus string `json:"servingStatus,omitempty"`
   504  
   505  	// ServerResponse contains the HTTP response code and headers from the server.
   506  	googleapi.ServerResponse `json:"-"`
   507  	// ForceSendFields is a list of field names (e.g. "AuthDomain") to
   508  	// unconditionally include in API requests. By default, fields with empty or
   509  	// default values are omitted from API requests. See
   510  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   511  	// details.
   512  	ForceSendFields []string `json:"-"`
   513  	// NullFields is a list of field names (e.g. "AuthDomain") to include in API
   514  	// requests with the JSON null value. By default, fields with empty values are
   515  	// omitted from API requests. See
   516  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   517  	NullFields []string `json:"-"`
   518  }
   519  
   520  func (s *Application) MarshalJSON() ([]byte, error) {
   521  	type NoMethod Application
   522  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   523  }
   524  
   525  // AuthorizedCertificate: An SSL certificate that a user has been authorized to
   526  // administer. A user is authorized to administer any certificate that applies
   527  // to one of their authorized domains.
   528  type AuthorizedCertificate struct {
   529  	// CertificateRawData: The SSL certificate serving the AuthorizedCertificate
   530  	// resource. This must be obtained independently from a certificate authority.
   531  	CertificateRawData *CertificateRawData `json:"certificateRawData,omitempty"`
   532  	// DisplayName: The user-specified display name of the certificate. This is not
   533  	// guaranteed to be unique. Example: My Certificate.
   534  	DisplayName string `json:"displayName,omitempty"`
   535  	// DomainMappingsCount: Aggregate count of the domain mappings with this
   536  	// certificate mapped. This count includes domain mappings on applications for
   537  	// which the user does not have VIEWER permissions.Only returned by GET or LIST
   538  	// requests when specifically requested by the view=FULL_CERTIFICATE
   539  	// option.@OutputOnly
   540  	DomainMappingsCount int64 `json:"domainMappingsCount,omitempty"`
   541  	// DomainNames: Topmost applicable domains of this certificate. This
   542  	// certificate applies to these domains and their subdomains. Example:
   543  	// example.com.@OutputOnly
   544  	DomainNames []string `json:"domainNames,omitempty"`
   545  	// ExpireTime: The time when this certificate expires. To update the renewal
   546  	// time on this certificate, upload an SSL certificate with a different
   547  	// expiration time using
   548  	// AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly
   549  	ExpireTime string `json:"expireTime,omitempty"`
   550  	// Id: Relative name of the certificate. This is a unique value autogenerated
   551  	// on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly
   552  	Id string `json:"id,omitempty"`
   553  	// ManagedCertificate: Only applicable if this certificate is managed by App
   554  	// Engine. Managed certificates are tied to the lifecycle of a DomainMapping
   555  	// and cannot be updated or deleted via the AuthorizedCertificates API. If this
   556  	// certificate is manually administered by the user, this field will be
   557  	// empty.@OutputOnly
   558  	ManagedCertificate *ManagedCertificate `json:"managedCertificate,omitempty"`
   559  	// Name: Full path to the AuthorizedCertificate resource in the API. Example:
   560  	// apps/myapp/authorizedCertificates/12345.@OutputOnly
   561  	Name string `json:"name,omitempty"`
   562  	// VisibleDomainMappings: The full paths to user visible Domain Mapping
   563  	// resources that have this certificate mapped. Example:
   564  	// apps/myapp/domainMappings/example.com.This may not represent the full list
   565  	// of mapped domain mappings if the user does not have VIEWER permissions on
   566  	// all of the applications that have this certificate mapped. See
   567  	// domain_mappings_count for a complete count.Only returned by GET or LIST
   568  	// requests when specifically requested by the view=FULL_CERTIFICATE
   569  	// option.@OutputOnly
   570  	VisibleDomainMappings []string `json:"visibleDomainMappings,omitempty"`
   571  
   572  	// ServerResponse contains the HTTP response code and headers from the server.
   573  	googleapi.ServerResponse `json:"-"`
   574  	// ForceSendFields is a list of field names (e.g. "CertificateRawData") to
   575  	// unconditionally include in API requests. By default, fields with empty or
   576  	// default values are omitted from API requests. See
   577  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   578  	// details.
   579  	ForceSendFields []string `json:"-"`
   580  	// NullFields is a list of field names (e.g. "CertificateRawData") to include
   581  	// in API requests with the JSON null value. By default, fields with empty
   582  	// values are omitted from API requests. See
   583  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   584  	NullFields []string `json:"-"`
   585  }
   586  
   587  func (s *AuthorizedCertificate) MarshalJSON() ([]byte, error) {
   588  	type NoMethod AuthorizedCertificate
   589  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   590  }
   591  
   592  // AuthorizedDomain: A domain that a user has been authorized to administer. To
   593  // authorize use of a domain, verify ownership via Search Console
   594  // (https://search.google.com/search-console/welcome).
   595  type AuthorizedDomain struct {
   596  	// Id: Fully qualified domain name of the domain authorized for use. Example:
   597  	// example.com.
   598  	Id string `json:"id,omitempty"`
   599  	// Name: Full path to the AuthorizedDomain resource in the API. Example:
   600  	// apps/myapp/authorizedDomains/example.com.@OutputOnly
   601  	Name string `json:"name,omitempty"`
   602  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
   603  	// include in API requests. By default, fields with empty or default values are
   604  	// omitted from API requests. See
   605  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   606  	// details.
   607  	ForceSendFields []string `json:"-"`
   608  	// NullFields is a list of field names (e.g. "Id") to include in API requests
   609  	// with the JSON null value. By default, fields with empty values are omitted
   610  	// from API requests. See
   611  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   612  	NullFields []string `json:"-"`
   613  }
   614  
   615  func (s *AuthorizedDomain) MarshalJSON() ([]byte, error) {
   616  	type NoMethod AuthorizedDomain
   617  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   618  }
   619  
   620  // AutomaticScaling: Automatic scaling is based on request rate, response
   621  // latencies, and other application metrics.
   622  type AutomaticScaling struct {
   623  	// CoolDownPeriod: The time period that the Autoscaler
   624  	// (https://cloud.google.com/compute/docs/autoscaler/) should wait before it
   625  	// starts collecting information from a new instance. This prevents the
   626  	// autoscaler from collecting information when the instance is initializing,
   627  	// during which the collected usage would not be reliable. Only applicable in
   628  	// the App Engine flexible environment.
   629  	CoolDownPeriod string `json:"coolDownPeriod,omitempty"`
   630  	// CpuUtilization: Target scaling by CPU usage.
   631  	CpuUtilization *CpuUtilization `json:"cpuUtilization,omitempty"`
   632  	// DiskUtilization: Target scaling by disk usage.
   633  	DiskUtilization *DiskUtilization `json:"diskUtilization,omitempty"`
   634  	// MaxConcurrentRequests: Number of concurrent requests an automatic scaling
   635  	// instance can accept before the scheduler spawns a new instance.Defaults to a
   636  	// runtime-specific value.
   637  	MaxConcurrentRequests int64 `json:"maxConcurrentRequests,omitempty"`
   638  	// MaxIdleInstances: Maximum number of idle instances that should be maintained
   639  	// for this version.
   640  	MaxIdleInstances int64 `json:"maxIdleInstances,omitempty"`
   641  	// MaxPendingLatency: Maximum amount of time that a request should wait in the
   642  	// pending queue before starting a new instance to handle it.
   643  	MaxPendingLatency string `json:"maxPendingLatency,omitempty"`
   644  	// MaxTotalInstances: Maximum number of instances that should be started to
   645  	// handle requests for this version.
   646  	MaxTotalInstances int64 `json:"maxTotalInstances,omitempty"`
   647  	// MinIdleInstances: Minimum number of idle instances that should be maintained
   648  	// for this version. Only applicable for the default version of a service.
   649  	MinIdleInstances int64 `json:"minIdleInstances,omitempty"`
   650  	// MinPendingLatency: Minimum amount of time a request should wait in the
   651  	// pending queue before starting a new instance to handle it.
   652  	MinPendingLatency string `json:"minPendingLatency,omitempty"`
   653  	// MinTotalInstances: Minimum number of running instances that should be
   654  	// maintained for this version.
   655  	MinTotalInstances int64 `json:"minTotalInstances,omitempty"`
   656  	// NetworkUtilization: Target scaling by network usage.
   657  	NetworkUtilization *NetworkUtilization `json:"networkUtilization,omitempty"`
   658  	// RequestUtilization: Target scaling by request utilization.
   659  	RequestUtilization *RequestUtilization `json:"requestUtilization,omitempty"`
   660  	// StandardSchedulerSettings: Scheduler settings for standard environment.
   661  	StandardSchedulerSettings *StandardSchedulerSettings `json:"standardSchedulerSettings,omitempty"`
   662  	// ForceSendFields is a list of field names (e.g. "CoolDownPeriod") to
   663  	// unconditionally include in API requests. By default, fields with empty or
   664  	// default values are omitted from API requests. See
   665  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   666  	// details.
   667  	ForceSendFields []string `json:"-"`
   668  	// NullFields is a list of field names (e.g. "CoolDownPeriod") to include in
   669  	// API requests with the JSON null value. By default, fields with empty values
   670  	// are omitted from API requests. See
   671  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   672  	NullFields []string `json:"-"`
   673  }
   674  
   675  func (s *AutomaticScaling) MarshalJSON() ([]byte, error) {
   676  	type NoMethod AutomaticScaling
   677  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   678  }
   679  
   680  // BasicScaling: A service with basic scaling will create an instance when the
   681  // application receives a request. The instance will be turned down when the
   682  // app becomes idle. Basic scaling is ideal for work that is intermittent or
   683  // driven by user activity.
   684  type BasicScaling struct {
   685  	// IdleTimeout: Duration of time after the last request that an instance must
   686  	// wait before the instance is shut down.
   687  	IdleTimeout string `json:"idleTimeout,omitempty"`
   688  	// MaxInstances: Maximum number of instances to create for this version.
   689  	MaxInstances int64 `json:"maxInstances,omitempty"`
   690  	// ForceSendFields is a list of field names (e.g. "IdleTimeout") to
   691  	// unconditionally include in API requests. By default, fields with empty or
   692  	// default values are omitted from API requests. See
   693  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   694  	// details.
   695  	ForceSendFields []string `json:"-"`
   696  	// NullFields is a list of field names (e.g. "IdleTimeout") to include in API
   697  	// requests with the JSON null value. By default, fields with empty values are
   698  	// omitted from API requests. See
   699  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   700  	NullFields []string `json:"-"`
   701  }
   702  
   703  func (s *BasicScaling) MarshalJSON() ([]byte, error) {
   704  	type NoMethod BasicScaling
   705  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   706  }
   707  
   708  // BatchUpdateIngressRulesRequest: Request message for
   709  // Firewall.BatchUpdateIngressRules.
   710  type BatchUpdateIngressRulesRequest struct {
   711  	// IngressRules: A list of FirewallRules to replace the existing set.
   712  	IngressRules []*FirewallRule `json:"ingressRules,omitempty"`
   713  	// ForceSendFields is a list of field names (e.g. "IngressRules") to
   714  	// unconditionally include in API requests. By default, fields with empty or
   715  	// default values are omitted from API requests. See
   716  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   717  	// details.
   718  	ForceSendFields []string `json:"-"`
   719  	// NullFields is a list of field names (e.g. "IngressRules") to include in API
   720  	// requests with the JSON null value. By default, fields with empty values are
   721  	// omitted from API requests. See
   722  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   723  	NullFields []string `json:"-"`
   724  }
   725  
   726  func (s *BatchUpdateIngressRulesRequest) MarshalJSON() ([]byte, error) {
   727  	type NoMethod BatchUpdateIngressRulesRequest
   728  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   729  }
   730  
   731  // BatchUpdateIngressRulesResponse: Response message for
   732  // Firewall.UpdateAllIngressRules.
   733  type BatchUpdateIngressRulesResponse struct {
   734  	// IngressRules: The full list of ingress FirewallRules for this application.
   735  	IngressRules []*FirewallRule `json:"ingressRules,omitempty"`
   736  
   737  	// ServerResponse contains the HTTP response code and headers from the server.
   738  	googleapi.ServerResponse `json:"-"`
   739  	// ForceSendFields is a list of field names (e.g. "IngressRules") to
   740  	// unconditionally include in API requests. By default, fields with empty or
   741  	// default values are omitted from API requests. See
   742  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   743  	// details.
   744  	ForceSendFields []string `json:"-"`
   745  	// NullFields is a list of field names (e.g. "IngressRules") to include in API
   746  	// requests with the JSON null value. By default, fields with empty values are
   747  	// omitted from API requests. See
   748  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   749  	NullFields []string `json:"-"`
   750  }
   751  
   752  func (s *BatchUpdateIngressRulesResponse) MarshalJSON() ([]byte, error) {
   753  	type NoMethod BatchUpdateIngressRulesResponse
   754  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   755  }
   756  
   757  // CertificateRawData: An SSL certificate obtained from a certificate
   758  // authority.
   759  type CertificateRawData struct {
   760  	// PrivateKey: Unencrypted PEM encoded RSA private key. This field is set once
   761  	// on certificate creation and then encrypted. The key size must be 2048 bits
   762  	// or fewer. Must include the header and footer. Example: -----BEGIN RSA
   763  	// PRIVATE KEY----- -----END RSA PRIVATE KEY----- @InputOnly
   764  	PrivateKey string `json:"privateKey,omitempty"`
   765  	// PublicCertificate: PEM encoded x.509 public key certificate. This field is
   766  	// set once on certificate creation. Must include the header and footer.
   767  	// Example: -----BEGIN CERTIFICATE----- -----END CERTIFICATE-----
   768  	PublicCertificate string `json:"publicCertificate,omitempty"`
   769  	// ForceSendFields is a list of field names (e.g. "PrivateKey") to
   770  	// unconditionally include in API requests. By default, fields with empty or
   771  	// default values are omitted from API requests. See
   772  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   773  	// details.
   774  	ForceSendFields []string `json:"-"`
   775  	// NullFields is a list of field names (e.g. "PrivateKey") to include in API
   776  	// requests with the JSON null value. By default, fields with empty values are
   777  	// omitted from API requests. See
   778  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   779  	NullFields []string `json:"-"`
   780  }
   781  
   782  func (s *CertificateRawData) MarshalJSON() ([]byte, error) {
   783  	type NoMethod CertificateRawData
   784  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   785  }
   786  
   787  // CloudBuildOptions: Options for the build operations performed as a part of
   788  // the version deployment. Only applicable for App Engine flexible environment
   789  // when creating a version using source code directly.
   790  type CloudBuildOptions struct {
   791  	// AppYamlPath: Path to the yaml file used in deployment, used to determine
   792  	// runtime configuration details.Required for flexible environment builds.See
   793  	// https://cloud.google.com/appengine/docs/standard/python/config/appref for
   794  	// more details.
   795  	AppYamlPath string `json:"appYamlPath,omitempty"`
   796  	// CloudBuildTimeout: The Cloud Build timeout used as part of any dependent
   797  	// builds performed by version creation. Defaults to 10 minutes.
   798  	CloudBuildTimeout string `json:"cloudBuildTimeout,omitempty"`
   799  	// ForceSendFields is a list of field names (e.g. "AppYamlPath") to
   800  	// unconditionally include in API requests. By default, fields with empty or
   801  	// default values are omitted from API requests. See
   802  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   803  	// details.
   804  	ForceSendFields []string `json:"-"`
   805  	// NullFields is a list of field names (e.g. "AppYamlPath") to include in API
   806  	// requests with the JSON null value. By default, fields with empty values are
   807  	// omitted from API requests. See
   808  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   809  	NullFields []string `json:"-"`
   810  }
   811  
   812  func (s *CloudBuildOptions) MarshalJSON() ([]byte, error) {
   813  	type NoMethod CloudBuildOptions
   814  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   815  }
   816  
   817  // ContainerInfo: Docker image that is used to create a container and start a
   818  // VM instance for the version that you deploy. Only applicable for instances
   819  // running in the App Engine flexible environment.
   820  type ContainerInfo struct {
   821  	// Image: URI to the hosted container image in Google Container Registry. The
   822  	// URI must be fully qualified and include a tag or digest. Examples:
   823  	// "gcr.io/my-project/image:tag" or "gcr.io/my-project/image@digest"
   824  	Image string `json:"image,omitempty"`
   825  	// ForceSendFields is a list of field names (e.g. "Image") to unconditionally
   826  	// include in API requests. By default, fields with empty or default values are
   827  	// omitted from API requests. See
   828  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   829  	// details.
   830  	ForceSendFields []string `json:"-"`
   831  	// NullFields is a list of field names (e.g. "Image") to include in API
   832  	// requests with the JSON null value. By default, fields with empty values are
   833  	// omitted from API requests. See
   834  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   835  	NullFields []string `json:"-"`
   836  }
   837  
   838  func (s *ContainerInfo) MarshalJSON() ([]byte, error) {
   839  	type NoMethod ContainerInfo
   840  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   841  }
   842  
   843  // ContainerState: ContainerState contains the externally-visible container
   844  // state that is used to communicate the state and reasoning for that state to
   845  // the CLH. This data is not persisted by CCFE, but is instead derived from
   846  // CCFE's internal representation of the container state.
   847  type ContainerState struct {
   848  	CurrentReasons *Reasons `json:"currentReasons,omitempty"`
   849  	// PreviousReasons: The previous and current reasons for a container state will
   850  	// be sent for a container event. CLHs that need to know the signal that caused
   851  	// the container event to trigger (edges) as opposed to just knowing the state
   852  	// can act upon differences in the previous and current reasons.Reasons will be
   853  	// provided for every system: service management, data governance, abuse, and
   854  	// billing.If this is a CCFE-triggered event used for reconciliation then the
   855  	// current reasons will be set to their *_CONTROL_PLANE_SYNC state. The
   856  	// previous reasons will contain the last known set of non-unknown
   857  	// non-control_plane_sync reasons for the state.
   858  	PreviousReasons *Reasons `json:"previousReasons,omitempty"`
   859  	// State: The current state of the container. This state is the culmination of
   860  	// all of the opinions from external systems that CCFE knows about of the
   861  	// container.
   862  	//
   863  	// Possible values:
   864  	//   "UNKNOWN_STATE" - A container should never be in an unknown state. Receipt
   865  	// of a container with this state is an error.
   866  	//   "ON" - CCFE considers the container to be serving or transitioning into
   867  	// serving.
   868  	//   "OFF" - CCFE considers the container to be in an OFF state. This could
   869  	// occur due to various factors. The state could be triggered by
   870  	// Google-internal audits (ex. abuse suspension, billing closed) or cleanups
   871  	// trigged by compliance systems (ex. data governance hide). User-initiated
   872  	// events such as service management deactivation trigger a container to an OFF
   873  	// state.CLHs might choose to do nothing in this case or to turn off costly
   874  	// resources. CLHs need to consider the customer experience if an ON/OFF/ON
   875  	// sequence of state transitions occurs vs. the cost of deleting resources,
   876  	// keeping metadata about resources, or even keeping resources live for a
   877  	// period of time.CCFE will not send any new customer requests to the CLH when
   878  	// the container is in an OFF state. However, CCFE will allow all previous
   879  	// customer requests relayed to CLH to complete.
   880  	//   "DELETED" - This state indicates that the container has been (or is being)
   881  	// completely removed. This is often due to a data governance purge request and
   882  	// therefore resources should be deleted when this state is reached.
   883  	State string `json:"state,omitempty"`
   884  	// ForceSendFields is a list of field names (e.g. "CurrentReasons") to
   885  	// unconditionally include in API requests. By default, fields with empty or
   886  	// default values are omitted from API requests. See
   887  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   888  	// details.
   889  	ForceSendFields []string `json:"-"`
   890  	// NullFields is a list of field names (e.g. "CurrentReasons") to include in
   891  	// API requests with the JSON null value. By default, fields with empty values
   892  	// are omitted from API requests. See
   893  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   894  	NullFields []string `json:"-"`
   895  }
   896  
   897  func (s *ContainerState) MarshalJSON() ([]byte, error) {
   898  	type NoMethod ContainerState
   899  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   900  }
   901  
   902  // CpuUtilization: Target scaling by CPU usage.
   903  type CpuUtilization struct {
   904  	// AggregationWindowLength: Period of time over which CPU utilization is
   905  	// calculated.
   906  	AggregationWindowLength string `json:"aggregationWindowLength,omitempty"`
   907  	// TargetUtilization: Target CPU utilization ratio to maintain when scaling.
   908  	// Must be between 0 and 1.
   909  	TargetUtilization float64 `json:"targetUtilization,omitempty"`
   910  	// ForceSendFields is a list of field names (e.g. "AggregationWindowLength") to
   911  	// unconditionally include in API requests. By default, fields with empty or
   912  	// default values are omitted from API requests. See
   913  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   914  	// details.
   915  	ForceSendFields []string `json:"-"`
   916  	// NullFields is a list of field names (e.g. "AggregationWindowLength") to
   917  	// include in API requests with the JSON null value. By default, fields with
   918  	// empty values are omitted from API requests. See
   919  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   920  	NullFields []string `json:"-"`
   921  }
   922  
   923  func (s *CpuUtilization) MarshalJSON() ([]byte, error) {
   924  	type NoMethod CpuUtilization
   925  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   926  }
   927  
   928  func (s *CpuUtilization) UnmarshalJSON(data []byte) error {
   929  	type NoMethod CpuUtilization
   930  	var s1 struct {
   931  		TargetUtilization gensupport.JSONFloat64 `json:"targetUtilization"`
   932  		*NoMethod
   933  	}
   934  	s1.NoMethod = (*NoMethod)(s)
   935  	if err := json.Unmarshal(data, &s1); err != nil {
   936  		return err
   937  	}
   938  	s.TargetUtilization = float64(s1.TargetUtilization)
   939  	return nil
   940  }
   941  
   942  // CreateVersionMetadataV1: Metadata for the given google.longrunning.Operation
   943  // during a google.appengine.v1.CreateVersionRequest.
   944  type CreateVersionMetadataV1 struct {
   945  	// CloudBuildId: The Cloud Build ID if one was created as part of the version
   946  	// create. @OutputOnly
   947  	CloudBuildId string `json:"cloudBuildId,omitempty"`
   948  	// ForceSendFields is a list of field names (e.g. "CloudBuildId") to
   949  	// unconditionally include in API requests. By default, fields with empty or
   950  	// default values are omitted from API requests. See
   951  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   952  	// details.
   953  	ForceSendFields []string `json:"-"`
   954  	// NullFields is a list of field names (e.g. "CloudBuildId") to include in API
   955  	// requests with the JSON null value. By default, fields with empty values are
   956  	// omitted from API requests. See
   957  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   958  	NullFields []string `json:"-"`
   959  }
   960  
   961  func (s *CreateVersionMetadataV1) MarshalJSON() ([]byte, error) {
   962  	type NoMethod CreateVersionMetadataV1
   963  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   964  }
   965  
   966  // CreateVersionMetadataV1Alpha: Metadata for the given
   967  // google.longrunning.Operation during a
   968  // google.appengine.v1alpha.CreateVersionRequest.
   969  type CreateVersionMetadataV1Alpha struct {
   970  	// CloudBuildId: The Cloud Build ID if one was created as part of the version
   971  	// create. @OutputOnly
   972  	CloudBuildId string `json:"cloudBuildId,omitempty"`
   973  	// ForceSendFields is a list of field names (e.g. "CloudBuildId") to
   974  	// unconditionally include in API requests. By default, fields with empty or
   975  	// default values are omitted from API requests. See
   976  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   977  	// details.
   978  	ForceSendFields []string `json:"-"`
   979  	// NullFields is a list of field names (e.g. "CloudBuildId") to include in API
   980  	// requests with the JSON null value. By default, fields with empty values are
   981  	// omitted from API requests. See
   982  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   983  	NullFields []string `json:"-"`
   984  }
   985  
   986  func (s *CreateVersionMetadataV1Alpha) MarshalJSON() ([]byte, error) {
   987  	type NoMethod CreateVersionMetadataV1Alpha
   988  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   989  }
   990  
   991  // CreateVersionMetadataV1Beta: Metadata for the given
   992  // google.longrunning.Operation during a
   993  // google.appengine.v1beta.CreateVersionRequest.
   994  type CreateVersionMetadataV1Beta struct {
   995  	// CloudBuildId: The Cloud Build ID if one was created as part of the version
   996  	// create. @OutputOnly
   997  	CloudBuildId string `json:"cloudBuildId,omitempty"`
   998  	// ForceSendFields is a list of field names (e.g. "CloudBuildId") to
   999  	// unconditionally include in API requests. By default, fields with empty or
  1000  	// default values are omitted from API requests. See
  1001  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1002  	// details.
  1003  	ForceSendFields []string `json:"-"`
  1004  	// NullFields is a list of field names (e.g. "CloudBuildId") to include in API
  1005  	// requests with the JSON null value. By default, fields with empty values are
  1006  	// omitted from API requests. See
  1007  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1008  	NullFields []string `json:"-"`
  1009  }
  1010  
  1011  func (s *CreateVersionMetadataV1Beta) MarshalJSON() ([]byte, error) {
  1012  	type NoMethod CreateVersionMetadataV1Beta
  1013  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1014  }
  1015  
  1016  // Date: Represents a whole or partial calendar date, such as a birthday. The
  1017  // time of day and time zone are either specified elsewhere or are
  1018  // insignificant. The date is relative to the Gregorian Calendar. This can
  1019  // represent one of the following: A full date, with non-zero year, month, and
  1020  // day values. A month and day, with a zero year (for example, an anniversary).
  1021  // A year on its own, with a zero month and a zero day. A year and month, with
  1022  // a zero day (for example, a credit card expiration date).Related types:
  1023  // google.type.TimeOfDay google.type.DateTime google.protobuf.Timestamp
  1024  type Date struct {
  1025  	// Day: Day of a month. Must be from 1 to 31 and valid for the year and month,
  1026  	// or 0 to specify a year by itself or a year and month where the day isn't
  1027  	// significant.
  1028  	Day int64 `json:"day,omitempty"`
  1029  	// Month: Month of a year. Must be from 1 to 12, or 0 to specify a year without
  1030  	// a month and day.
  1031  	Month int64 `json:"month,omitempty"`
  1032  	// Year: Year of the date. Must be from 1 to 9999, or 0 to specify a date
  1033  	// without a year.
  1034  	Year int64 `json:"year,omitempty"`
  1035  	// ForceSendFields is a list of field names (e.g. "Day") to unconditionally
  1036  	// include in API requests. By default, fields with empty or default values are
  1037  	// omitted from API requests. See
  1038  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1039  	// details.
  1040  	ForceSendFields []string `json:"-"`
  1041  	// NullFields is a list of field names (e.g. "Day") to include in API requests
  1042  	// with the JSON null value. By default, fields with empty values are omitted
  1043  	// from API requests. See
  1044  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1045  	NullFields []string `json:"-"`
  1046  }
  1047  
  1048  func (s *Date) MarshalJSON() ([]byte, error) {
  1049  	type NoMethod Date
  1050  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1051  }
  1052  
  1053  // DebugInstanceRequest: Request message for Instances.DebugInstance.
  1054  type DebugInstanceRequest struct {
  1055  	// SshKey: Public SSH key to add to the instance. Examples: [USERNAME]:ssh-rsa
  1056  	// [KEY_VALUE] [USERNAME] [USERNAME]:ssh-rsa [KEY_VALUE] google-ssh
  1057  	// {"userName":"[USERNAME]","expireOn":"[EXPIRE_TIME]"}For more information,
  1058  	// see Adding and Removing SSH Keys
  1059  	// (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys).
  1060  	SshKey string `json:"sshKey,omitempty"`
  1061  	// ForceSendFields is a list of field names (e.g. "SshKey") to unconditionally
  1062  	// include in API requests. By default, fields with empty or default values are
  1063  	// omitted from API requests. See
  1064  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1065  	// details.
  1066  	ForceSendFields []string `json:"-"`
  1067  	// NullFields is a list of field names (e.g. "SshKey") to include in API
  1068  	// requests with the JSON null value. By default, fields with empty values are
  1069  	// omitted from API requests. See
  1070  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1071  	NullFields []string `json:"-"`
  1072  }
  1073  
  1074  func (s *DebugInstanceRequest) MarshalJSON() ([]byte, error) {
  1075  	type NoMethod DebugInstanceRequest
  1076  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1077  }
  1078  
  1079  // Deployment: Code and application artifacts used to deploy a version to App
  1080  // Engine.
  1081  type Deployment struct {
  1082  	// CloudBuildOptions: Options for any Google Cloud Build builds created as a
  1083  	// part of this deployment.These options will only be used if a new build is
  1084  	// created, such as when deploying to the App Engine flexible environment using
  1085  	// files or zip.
  1086  	CloudBuildOptions *CloudBuildOptions `json:"cloudBuildOptions,omitempty"`
  1087  	// Container: The Docker image for the container that runs the version. Only
  1088  	// applicable for instances running in the App Engine flexible environment.
  1089  	Container *ContainerInfo `json:"container,omitempty"`
  1090  	// Files: Manifest of the files stored in Google Cloud Storage that are
  1091  	// included as part of this version. All files must be readable using the
  1092  	// credentials supplied with this call.
  1093  	Files map[string]FileInfo `json:"files,omitempty"`
  1094  	// Zip: The zip file for this deployment, if this is a zip deployment.
  1095  	Zip *ZipInfo `json:"zip,omitempty"`
  1096  	// ForceSendFields is a list of field names (e.g. "CloudBuildOptions") to
  1097  	// unconditionally include in API requests. By default, fields with empty or
  1098  	// default values are omitted from API requests. See
  1099  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1100  	// details.
  1101  	ForceSendFields []string `json:"-"`
  1102  	// NullFields is a list of field names (e.g. "CloudBuildOptions") to include in
  1103  	// API requests with the JSON null value. By default, fields with empty values
  1104  	// are omitted from API requests. See
  1105  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1106  	NullFields []string `json:"-"`
  1107  }
  1108  
  1109  func (s *Deployment) MarshalJSON() ([]byte, error) {
  1110  	type NoMethod Deployment
  1111  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1112  }
  1113  
  1114  // DiskUtilization: Target scaling by disk usage. Only applicable in the App
  1115  // Engine flexible environment.
  1116  type DiskUtilization struct {
  1117  	// TargetReadBytesPerSecond: Target bytes read per second.
  1118  	TargetReadBytesPerSecond int64 `json:"targetReadBytesPerSecond,omitempty"`
  1119  	// TargetReadOpsPerSecond: Target ops read per seconds.
  1120  	TargetReadOpsPerSecond int64 `json:"targetReadOpsPerSecond,omitempty"`
  1121  	// TargetWriteBytesPerSecond: Target bytes written per second.
  1122  	TargetWriteBytesPerSecond int64 `json:"targetWriteBytesPerSecond,omitempty"`
  1123  	// TargetWriteOpsPerSecond: Target ops written per second.
  1124  	TargetWriteOpsPerSecond int64 `json:"targetWriteOpsPerSecond,omitempty"`
  1125  	// ForceSendFields is a list of field names (e.g. "TargetReadBytesPerSecond")
  1126  	// to unconditionally include in API requests. By default, fields with empty or
  1127  	// default values are omitted from API requests. See
  1128  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1129  	// details.
  1130  	ForceSendFields []string `json:"-"`
  1131  	// NullFields is a list of field names (e.g. "TargetReadBytesPerSecond") to
  1132  	// include in API requests with the JSON null value. By default, fields with
  1133  	// empty values are omitted from API requests. See
  1134  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1135  	NullFields []string `json:"-"`
  1136  }
  1137  
  1138  func (s *DiskUtilization) MarshalJSON() ([]byte, error) {
  1139  	type NoMethod DiskUtilization
  1140  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1141  }
  1142  
  1143  // DomainMapping: A domain serving an App Engine application.
  1144  type DomainMapping struct {
  1145  	// Id: Relative name of the domain serving the application. Example:
  1146  	// example.com.
  1147  	Id string `json:"id,omitempty"`
  1148  	// Name: Full path to the DomainMapping resource in the API. Example:
  1149  	// apps/myapp/domainMapping/example.com.@OutputOnly
  1150  	Name string `json:"name,omitempty"`
  1151  	// ResourceRecords: The resource records required to configure this domain
  1152  	// mapping. These records must be added to the domain's DNS configuration in
  1153  	// order to serve the application via this domain mapping.@OutputOnly
  1154  	ResourceRecords []*ResourceRecord `json:"resourceRecords,omitempty"`
  1155  	// SslSettings: SSL configuration for this domain. If unconfigured, this domain
  1156  	// will not serve with SSL.
  1157  	SslSettings *SslSettings `json:"sslSettings,omitempty"`
  1158  
  1159  	// ServerResponse contains the HTTP response code and headers from the server.
  1160  	googleapi.ServerResponse `json:"-"`
  1161  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  1162  	// include in API requests. By default, fields with empty or default values are
  1163  	// omitted from API requests. See
  1164  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1165  	// details.
  1166  	ForceSendFields []string `json:"-"`
  1167  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  1168  	// with the JSON null value. By default, fields with empty values are omitted
  1169  	// from API requests. See
  1170  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1171  	NullFields []string `json:"-"`
  1172  }
  1173  
  1174  func (s *DomainMapping) MarshalJSON() ([]byte, error) {
  1175  	type NoMethod DomainMapping
  1176  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1177  }
  1178  
  1179  // Empty: A generic empty message that you can re-use to avoid defining
  1180  // duplicated empty messages in your APIs. A typical example is to use it as
  1181  // the request or the response type of an API method. For instance: service Foo
  1182  // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
  1183  type Empty struct {
  1184  	// ServerResponse contains the HTTP response code and headers from the server.
  1185  	googleapi.ServerResponse `json:"-"`
  1186  }
  1187  
  1188  // EndpointsApiService: Google Cloud Endpoints
  1189  // (https://cloud.google.com/endpoints) configuration. The Endpoints API
  1190  // Service provides tooling for serving Open API and gRPC endpoints via an
  1191  // NGINX proxy. Only valid for App Engine Flexible environment deployments.The
  1192  // fields here refer to the name and configuration ID of a "service" resource
  1193  // in the Service Management API
  1194  // (https://cloud.google.com/service-management/overview).
  1195  type EndpointsApiService struct {
  1196  	// ConfigId: Endpoints service configuration ID as specified by the Service
  1197  	// Management API. For example "2016-09-19r1".By default, the rollout strategy
  1198  	// for Endpoints is RolloutStrategy.FIXED. This means that Endpoints starts up
  1199  	// with a particular configuration ID. When a new configuration is rolled out,
  1200  	// Endpoints must be given the new configuration ID. The config_id field is
  1201  	// used to give the configuration ID and is required in this case.Endpoints
  1202  	// also has a rollout strategy called RolloutStrategy.MANAGED. When using this,
  1203  	// Endpoints fetches the latest configuration and does not need the
  1204  	// configuration ID. In this case, config_id must be omitted.
  1205  	ConfigId string `json:"configId,omitempty"`
  1206  	// DisableTraceSampling: Enable or disable trace sampling. By default, this is
  1207  	// set to false for enabled.
  1208  	DisableTraceSampling bool `json:"disableTraceSampling,omitempty"`
  1209  	// Name: Endpoints service name which is the name of the "service" resource in
  1210  	// the Service Management API. For example
  1211  	// "myapi.endpoints.myproject.cloud.goog"
  1212  	Name string `json:"name,omitempty"`
  1213  	// RolloutStrategy: Endpoints rollout strategy. If FIXED, config_id must be
  1214  	// specified. If MANAGED, config_id must be omitted.
  1215  	//
  1216  	// Possible values:
  1217  	//   "UNSPECIFIED_ROLLOUT_STRATEGY" - Not specified. Defaults to FIXED.
  1218  	//   "FIXED" - Endpoints service configuration ID will be fixed to the
  1219  	// configuration ID specified by config_id.
  1220  	//   "MANAGED" - Endpoints service configuration ID will be updated with each
  1221  	// rollout.
  1222  	RolloutStrategy string `json:"rolloutStrategy,omitempty"`
  1223  	// ForceSendFields is a list of field names (e.g. "ConfigId") to
  1224  	// unconditionally include in API requests. By default, fields with empty or
  1225  	// default values are omitted from API requests. See
  1226  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1227  	// details.
  1228  	ForceSendFields []string `json:"-"`
  1229  	// NullFields is a list of field names (e.g. "ConfigId") to include in API
  1230  	// requests with the JSON null value. By default, fields with empty values are
  1231  	// omitted from API requests. See
  1232  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1233  	NullFields []string `json:"-"`
  1234  }
  1235  
  1236  func (s *EndpointsApiService) MarshalJSON() ([]byte, error) {
  1237  	type NoMethod EndpointsApiService
  1238  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1239  }
  1240  
  1241  // Entrypoint: The entrypoint for the application.
  1242  type Entrypoint struct {
  1243  	// Shell: The format should be a shell command that can be fed to bash -c.
  1244  	Shell string `json:"shell,omitempty"`
  1245  	// ForceSendFields is a list of field names (e.g. "Shell") to unconditionally
  1246  	// include in API requests. By default, fields with empty or default values are
  1247  	// omitted from API requests. See
  1248  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1249  	// details.
  1250  	ForceSendFields []string `json:"-"`
  1251  	// NullFields is a list of field names (e.g. "Shell") to include in API
  1252  	// requests with the JSON null value. By default, fields with empty values are
  1253  	// omitted from API requests. See
  1254  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1255  	NullFields []string `json:"-"`
  1256  }
  1257  
  1258  func (s *Entrypoint) MarshalJSON() ([]byte, error) {
  1259  	type NoMethod Entrypoint
  1260  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1261  }
  1262  
  1263  // ErrorHandler: Custom static error page to be served when an error occurs.
  1264  type ErrorHandler struct {
  1265  	// ErrorCode: Error condition this handler applies to.
  1266  	//
  1267  	// Possible values:
  1268  	//   "ERROR_CODE_UNSPECIFIED" - Not specified. ERROR_CODE_DEFAULT is assumed.
  1269  	//   "ERROR_CODE_DEFAULT" - All other error types.
  1270  	//   "ERROR_CODE_OVER_QUOTA" - Application has exceeded a resource quota.
  1271  	//   "ERROR_CODE_DOS_API_DENIAL" - Client blocked by the application's Denial
  1272  	// of Service protection configuration.
  1273  	//   "ERROR_CODE_TIMEOUT" - Deadline reached before the application responds.
  1274  	ErrorCode string `json:"errorCode,omitempty"`
  1275  	// MimeType: MIME type of file. Defaults to text/html.
  1276  	MimeType string `json:"mimeType,omitempty"`
  1277  	// StaticFile: Static file content to be served for this error.
  1278  	StaticFile string `json:"staticFile,omitempty"`
  1279  	// ForceSendFields is a list of field names (e.g. "ErrorCode") to
  1280  	// unconditionally include in API requests. By default, fields with empty or
  1281  	// default values are omitted from API requests. See
  1282  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1283  	// details.
  1284  	ForceSendFields []string `json:"-"`
  1285  	// NullFields is a list of field names (e.g. "ErrorCode") to include in API
  1286  	// requests with the JSON null value. By default, fields with empty values are
  1287  	// omitted from API requests. See
  1288  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1289  	NullFields []string `json:"-"`
  1290  }
  1291  
  1292  func (s *ErrorHandler) MarshalJSON() ([]byte, error) {
  1293  	type NoMethod ErrorHandler
  1294  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1295  }
  1296  
  1297  // FeatureSettings: The feature specific settings to be used in the
  1298  // application. These define behaviors that are user configurable.
  1299  type FeatureSettings struct {
  1300  	// SplitHealthChecks: Boolean value indicating if split health checks should be
  1301  	// used instead of the legacy health checks. At an app.yaml level, this means
  1302  	// defaulting to 'readiness_check' and 'liveness_check' values instead of
  1303  	// 'health_check' ones. Once the legacy 'health_check' behavior is deprecated,
  1304  	// and this value is always true, this setting can be removed.
  1305  	SplitHealthChecks bool `json:"splitHealthChecks,omitempty"`
  1306  	// UseContainerOptimizedOs: If true, use Container-Optimized OS
  1307  	// (https://cloud.google.com/container-optimized-os/) base image for VMs,
  1308  	// rather than a base Debian image.
  1309  	UseContainerOptimizedOs bool `json:"useContainerOptimizedOs,omitempty"`
  1310  	// ForceSendFields is a list of field names (e.g. "SplitHealthChecks") to
  1311  	// unconditionally include in API requests. By default, fields with empty or
  1312  	// default values are omitted from API requests. See
  1313  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1314  	// details.
  1315  	ForceSendFields []string `json:"-"`
  1316  	// NullFields is a list of field names (e.g. "SplitHealthChecks") to include in
  1317  	// API requests with the JSON null value. By default, fields with empty values
  1318  	// are omitted from API requests. See
  1319  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1320  	NullFields []string `json:"-"`
  1321  }
  1322  
  1323  func (s *FeatureSettings) MarshalJSON() ([]byte, error) {
  1324  	type NoMethod FeatureSettings
  1325  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1326  }
  1327  
  1328  // FileInfo: Single source file that is part of the version to be deployed.
  1329  // Each source file that is deployed must be specified separately.
  1330  type FileInfo struct {
  1331  	// MimeType: The MIME type of the file.Defaults to the value from Google Cloud
  1332  	// Storage.
  1333  	MimeType string `json:"mimeType,omitempty"`
  1334  	// Sha1Sum: The SHA1 hash of the file, in hex.
  1335  	Sha1Sum string `json:"sha1Sum,omitempty"`
  1336  	// SourceUrl: URL source to use to fetch this file. Must be a URL to a resource
  1337  	// in Google Cloud Storage in the form 'http(s)://storage.googleapis.com//'.
  1338  	SourceUrl string `json:"sourceUrl,omitempty"`
  1339  	// ForceSendFields is a list of field names (e.g. "MimeType") to
  1340  	// unconditionally include in API requests. By default, fields with empty or
  1341  	// default values are omitted from API requests. See
  1342  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1343  	// details.
  1344  	ForceSendFields []string `json:"-"`
  1345  	// NullFields is a list of field names (e.g. "MimeType") to include in API
  1346  	// requests with the JSON null value. By default, fields with empty values are
  1347  	// omitted from API requests. See
  1348  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1349  	NullFields []string `json:"-"`
  1350  }
  1351  
  1352  func (s *FileInfo) MarshalJSON() ([]byte, error) {
  1353  	type NoMethod FileInfo
  1354  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1355  }
  1356  
  1357  // FirewallRule: A single firewall rule that is evaluated against incoming
  1358  // traffic and provides an action to take on matched requests.
  1359  type FirewallRule struct {
  1360  	// Action: The action to take on matched requests.
  1361  	//
  1362  	// Possible values:
  1363  	//   "UNSPECIFIED_ACTION"
  1364  	//   "ALLOW" - Matching requests are allowed.
  1365  	//   "DENY" - Matching requests are denied.
  1366  	Action string `json:"action,omitempty"`
  1367  	// Description: An optional string description of this rule. This field has a
  1368  	// maximum length of 400 characters.
  1369  	Description string `json:"description,omitempty"`
  1370  	// Priority: A positive integer between 1, Int32.MaxValue-1 that defines the
  1371  	// order of rule evaluation. Rules with the lowest priority are evaluated
  1372  	// first.A default rule at priority Int32.MaxValue matches all IPv4 and IPv6
  1373  	// traffic when no previous rule matches. Only the action of this rule can be
  1374  	// modified by the user.
  1375  	Priority int64 `json:"priority,omitempty"`
  1376  	// SourceRange: IP address or range, defined using CIDR notation, of requests
  1377  	// that this rule applies to. You can use the wildcard character "*" to match
  1378  	// all IPs equivalent to "0/0" and "::/0" together. Examples: 192.168.1.1 or
  1379  	// 192.168.0.0/16 or 2001:db8::/32 or 2001:0db8:0000:0042:0000:8a2e:0370:7334.
  1380  	// Truncation will be silently performed on addresses which are not properly
  1381  	// truncated. For example, 1.2.3.4/24 is accepted as the same address as
  1382  	// 1.2.3.0/24. Similarly, for IPv6, 2001:db8::1/32 is accepted as the same
  1383  	// address as 2001:db8::/32.
  1384  	SourceRange string `json:"sourceRange,omitempty"`
  1385  
  1386  	// ServerResponse contains the HTTP response code and headers from the server.
  1387  	googleapi.ServerResponse `json:"-"`
  1388  	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
  1389  	// include in API requests. By default, fields with empty or default values are
  1390  	// omitted from API requests. See
  1391  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1392  	// details.
  1393  	ForceSendFields []string `json:"-"`
  1394  	// NullFields is a list of field names (e.g. "Action") to include in API
  1395  	// requests with the JSON null value. By default, fields with empty values are
  1396  	// omitted from API requests. See
  1397  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1398  	NullFields []string `json:"-"`
  1399  }
  1400  
  1401  func (s *FirewallRule) MarshalJSON() ([]byte, error) {
  1402  	type NoMethod FirewallRule
  1403  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1404  }
  1405  
  1406  // FlexibleRuntimeSettings: Runtime settings for the App Engine flexible
  1407  // environment.
  1408  type FlexibleRuntimeSettings struct {
  1409  	// OperatingSystem: The operating system of the application runtime.
  1410  	OperatingSystem string `json:"operatingSystem,omitempty"`
  1411  	// RuntimeVersion: The runtime version of an App Engine flexible application.
  1412  	RuntimeVersion string `json:"runtimeVersion,omitempty"`
  1413  	// ForceSendFields is a list of field names (e.g. "OperatingSystem") to
  1414  	// unconditionally include in API requests. By default, fields with empty or
  1415  	// default values are omitted from API requests. See
  1416  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1417  	// details.
  1418  	ForceSendFields []string `json:"-"`
  1419  	// NullFields is a list of field names (e.g. "OperatingSystem") to include in
  1420  	// API requests with the JSON null value. By default, fields with empty values
  1421  	// are omitted from API requests. See
  1422  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1423  	NullFields []string `json:"-"`
  1424  }
  1425  
  1426  func (s *FlexibleRuntimeSettings) MarshalJSON() ([]byte, error) {
  1427  	type NoMethod FlexibleRuntimeSettings
  1428  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1429  }
  1430  
  1431  // GoogleAppengineV1betaLocationMetadata: Metadata for the given
  1432  // google.cloud.location.Location.
  1433  type GoogleAppengineV1betaLocationMetadata struct {
  1434  	// FlexibleEnvironmentAvailable: App Engine flexible environment is available
  1435  	// in the given location.@OutputOnly
  1436  	FlexibleEnvironmentAvailable bool `json:"flexibleEnvironmentAvailable,omitempty"`
  1437  	// SearchApiAvailable: Output only. Search API
  1438  	// (https://cloud.google.com/appengine/docs/standard/python/search) is
  1439  	// available in the given location.
  1440  	SearchApiAvailable bool `json:"searchApiAvailable,omitempty"`
  1441  	// StandardEnvironmentAvailable: App Engine standard environment is available
  1442  	// in the given location.@OutputOnly
  1443  	StandardEnvironmentAvailable bool `json:"standardEnvironmentAvailable,omitempty"`
  1444  	// ForceSendFields is a list of field names (e.g.
  1445  	// "FlexibleEnvironmentAvailable") to unconditionally include in API requests.
  1446  	// By default, fields with empty or default values are omitted from API
  1447  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  1448  	// for more details.
  1449  	ForceSendFields []string `json:"-"`
  1450  	// NullFields is a list of field names (e.g. "FlexibleEnvironmentAvailable") to
  1451  	// include in API requests with the JSON null value. By default, fields with
  1452  	// empty values are omitted from API requests. See
  1453  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1454  	NullFields []string `json:"-"`
  1455  }
  1456  
  1457  func (s *GoogleAppengineV1betaLocationMetadata) MarshalJSON() ([]byte, error) {
  1458  	type NoMethod GoogleAppengineV1betaLocationMetadata
  1459  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1460  }
  1461  
  1462  // HealthCheck: Health checking configuration for VM instances. Unhealthy
  1463  // instances are killed and replaced with new instances. Only applicable for
  1464  // instances in App Engine flexible environment.
  1465  type HealthCheck struct {
  1466  	// CheckInterval: Interval between health checks.
  1467  	CheckInterval string `json:"checkInterval,omitempty"`
  1468  	// DisableHealthCheck: Whether to explicitly disable health checks for this
  1469  	// instance.
  1470  	DisableHealthCheck bool `json:"disableHealthCheck,omitempty"`
  1471  	// HealthyThreshold: Number of consecutive successful health checks required
  1472  	// before receiving traffic.
  1473  	HealthyThreshold int64 `json:"healthyThreshold,omitempty"`
  1474  	// Host: Host header to send when performing an HTTP health check. Example:
  1475  	// "myapp.appspot.com"
  1476  	Host string `json:"host,omitempty"`
  1477  	// RestartThreshold: Number of consecutive failed health checks required before
  1478  	// an instance is restarted.
  1479  	RestartThreshold int64 `json:"restartThreshold,omitempty"`
  1480  	// Timeout: Time before the health check is considered failed.
  1481  	Timeout string `json:"timeout,omitempty"`
  1482  	// UnhealthyThreshold: Number of consecutive failed health checks required
  1483  	// before removing traffic.
  1484  	UnhealthyThreshold int64 `json:"unhealthyThreshold,omitempty"`
  1485  	// ForceSendFields is a list of field names (e.g. "CheckInterval") to
  1486  	// unconditionally include in API requests. By default, fields with empty or
  1487  	// default values are omitted from API requests. See
  1488  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1489  	// details.
  1490  	ForceSendFields []string `json:"-"`
  1491  	// NullFields is a list of field names (e.g. "CheckInterval") to include in API
  1492  	// requests with the JSON null value. By default, fields with empty values are
  1493  	// omitted from API requests. See
  1494  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1495  	NullFields []string `json:"-"`
  1496  }
  1497  
  1498  func (s *HealthCheck) MarshalJSON() ([]byte, error) {
  1499  	type NoMethod HealthCheck
  1500  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1501  }
  1502  
  1503  // IdentityAwareProxy: Identity-Aware Proxy
  1504  type IdentityAwareProxy struct {
  1505  	// Enabled: Whether the serving infrastructure will authenticate and authorize
  1506  	// all incoming requests.If true, the oauth2_client_id and oauth2_client_secret
  1507  	// fields must be non-empty.
  1508  	Enabled bool `json:"enabled,omitempty"`
  1509  	// Oauth2ClientId: OAuth2 client ID to use for the authentication flow.
  1510  	Oauth2ClientId string `json:"oauth2ClientId,omitempty"`
  1511  	// Oauth2ClientSecret: OAuth2 client secret to use for the authentication
  1512  	// flow.For security reasons, this value cannot be retrieved via the API.
  1513  	// Instead, the SHA-256 hash of the value is returned in the
  1514  	// oauth2_client_secret_sha256 field.@InputOnly
  1515  	Oauth2ClientSecret string `json:"oauth2ClientSecret,omitempty"`
  1516  	// Oauth2ClientSecretSha256: Output only. Hex-encoded SHA-256 hash of the
  1517  	// client secret.@OutputOnly
  1518  	Oauth2ClientSecretSha256 string `json:"oauth2ClientSecretSha256,omitempty"`
  1519  	// ForceSendFields is a list of field names (e.g. "Enabled") to unconditionally
  1520  	// include in API requests. By default, fields with empty or default values are
  1521  	// omitted from API requests. See
  1522  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1523  	// details.
  1524  	ForceSendFields []string `json:"-"`
  1525  	// NullFields is a list of field names (e.g. "Enabled") to include in API
  1526  	// requests with the JSON null value. By default, fields with empty values are
  1527  	// omitted from API requests. See
  1528  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1529  	NullFields []string `json:"-"`
  1530  }
  1531  
  1532  func (s *IdentityAwareProxy) MarshalJSON() ([]byte, error) {
  1533  	type NoMethod IdentityAwareProxy
  1534  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1535  }
  1536  
  1537  // Instance: An Instance resource is the computing unit that App Engine uses to
  1538  // automatically scale an application.
  1539  type Instance struct {
  1540  	// AppEngineRelease: Output only. App Engine release this instance is running
  1541  	// on.
  1542  	AppEngineRelease string `json:"appEngineRelease,omitempty"`
  1543  	// Availability: Output only. Availability of the instance.
  1544  	//
  1545  	// Possible values:
  1546  	//   "UNSPECIFIED"
  1547  	//   "RESIDENT"
  1548  	//   "DYNAMIC"
  1549  	Availability string `json:"availability,omitempty"`
  1550  	// AverageLatency: Output only. Average latency (ms) over the last minute.
  1551  	AverageLatency int64 `json:"averageLatency,omitempty"`
  1552  	// Errors: Output only. Number of errors since this instance was started.
  1553  	Errors int64 `json:"errors,omitempty"`
  1554  	// Id: Output only. Relative name of the instance within the version. Example:
  1555  	// instance-1.
  1556  	Id string `json:"id,omitempty"`
  1557  	// MemoryUsage: Output only. Total memory in use (bytes).
  1558  	MemoryUsage int64 `json:"memoryUsage,omitempty,string"`
  1559  	// Name: Output only. Full path to the Instance resource in the API. Example:
  1560  	// apps/myapp/services/default/versions/v1/instances/instance-1.
  1561  	Name string `json:"name,omitempty"`
  1562  	// Qps: Output only. Average queries per second (QPS) over the last minute.
  1563  	Qps float64 `json:"qps,omitempty"`
  1564  	// Requests: Output only. Number of requests since this instance was started.
  1565  	Requests int64 `json:"requests,omitempty"`
  1566  	// StartTime: Output only. Time that this instance was started.@OutputOnly
  1567  	StartTime string `json:"startTime,omitempty"`
  1568  	// VmDebugEnabled: Output only. Whether this instance is in debug mode. Only
  1569  	// applicable for instances in App Engine flexible environment.
  1570  	VmDebugEnabled bool `json:"vmDebugEnabled,omitempty"`
  1571  	// VmId: Output only. Virtual machine ID of this instance. Only applicable for
  1572  	// instances in App Engine flexible environment.
  1573  	VmId string `json:"vmId,omitempty"`
  1574  	// VmIp: Output only. The IP address of this instance. Only applicable for
  1575  	// instances in App Engine flexible environment.
  1576  	VmIp string `json:"vmIp,omitempty"`
  1577  	// VmLiveness: Output only. The liveness health check of this instance. Only
  1578  	// applicable for instances in App Engine flexible environment.
  1579  	//
  1580  	// Possible values:
  1581  	//   "LIVENESS_STATE_UNSPECIFIED" - There is no liveness health check for the
  1582  	// instance. Only applicable for instances in App Engine standard environment.
  1583  	//   "UNKNOWN" - The health checking system is aware of the instance but its
  1584  	// health is not known at the moment.
  1585  	//   "HEALTHY" - The instance is reachable i.e. a connection to the application
  1586  	// health checking endpoint can be established, and conforms to the
  1587  	// requirements defined by the health check.
  1588  	//   "UNHEALTHY" - The instance is reachable, but does not conform to the
  1589  	// requirements defined by the health check.
  1590  	//   "DRAINING" - The instance is being drained. The existing connections to
  1591  	// the instance have time to complete, but the new ones are being refused.
  1592  	//   "TIMEOUT" - The instance is unreachable i.e. a connection to the
  1593  	// application health checking endpoint cannot be established, or the server
  1594  	// does not respond within the specified timeout.
  1595  	VmLiveness string `json:"vmLiveness,omitempty"`
  1596  	// VmName: Output only. Name of the virtual machine where this instance lives.
  1597  	// Only applicable for instances in App Engine flexible environment.
  1598  	VmName string `json:"vmName,omitempty"`
  1599  	// VmStatus: Output only. Status of the virtual machine where this instance
  1600  	// lives. Only applicable for instances in App Engine flexible environment.
  1601  	VmStatus string `json:"vmStatus,omitempty"`
  1602  	// VmZoneName: Output only. Zone where the virtual machine is located. Only
  1603  	// applicable for instances in App Engine flexible environment.
  1604  	VmZoneName string `json:"vmZoneName,omitempty"`
  1605  
  1606  	// ServerResponse contains the HTTP response code and headers from the server.
  1607  	googleapi.ServerResponse `json:"-"`
  1608  	// ForceSendFields is a list of field names (e.g. "AppEngineRelease") to
  1609  	// unconditionally include in API requests. By default, fields with empty or
  1610  	// default values are omitted from API requests. See
  1611  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1612  	// details.
  1613  	ForceSendFields []string `json:"-"`
  1614  	// NullFields is a list of field names (e.g. "AppEngineRelease") to include in
  1615  	// API requests with the JSON null value. By default, fields with empty values
  1616  	// are omitted from API requests. See
  1617  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1618  	NullFields []string `json:"-"`
  1619  }
  1620  
  1621  func (s *Instance) MarshalJSON() ([]byte, error) {
  1622  	type NoMethod Instance
  1623  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1624  }
  1625  
  1626  func (s *Instance) UnmarshalJSON(data []byte) error {
  1627  	type NoMethod Instance
  1628  	var s1 struct {
  1629  		Qps gensupport.JSONFloat64 `json:"qps"`
  1630  		*NoMethod
  1631  	}
  1632  	s1.NoMethod = (*NoMethod)(s)
  1633  	if err := json.Unmarshal(data, &s1); err != nil {
  1634  		return err
  1635  	}
  1636  	s.Qps = float64(s1.Qps)
  1637  	return nil
  1638  }
  1639  
  1640  // Library: Third-party Python runtime library that is required by the
  1641  // application.
  1642  type Library struct {
  1643  	// Name: Name of the library. Example: "django".
  1644  	Name string `json:"name,omitempty"`
  1645  	// Version: Version of the library to select, or "latest".
  1646  	Version string `json:"version,omitempty"`
  1647  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  1648  	// include in API requests. By default, fields with empty or default values are
  1649  	// omitted from API requests. See
  1650  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1651  	// details.
  1652  	ForceSendFields []string `json:"-"`
  1653  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  1654  	// with the JSON null value. By default, fields with empty values are omitted
  1655  	// from API requests. See
  1656  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1657  	NullFields []string `json:"-"`
  1658  }
  1659  
  1660  func (s *Library) MarshalJSON() ([]byte, error) {
  1661  	type NoMethod Library
  1662  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1663  }
  1664  
  1665  // ListAuthorizedCertificatesResponse: Response message for
  1666  // AuthorizedCertificates.ListAuthorizedCertificates.
  1667  type ListAuthorizedCertificatesResponse struct {
  1668  	// Certificates: The SSL certificates the user is authorized to administer.
  1669  	Certificates []*AuthorizedCertificate `json:"certificates,omitempty"`
  1670  	// NextPageToken: Continuation token for fetching the next page of results.
  1671  	NextPageToken string `json:"nextPageToken,omitempty"`
  1672  
  1673  	// ServerResponse contains the HTTP response code and headers from the server.
  1674  	googleapi.ServerResponse `json:"-"`
  1675  	// ForceSendFields is a list of field names (e.g. "Certificates") to
  1676  	// unconditionally include in API requests. By default, fields with empty or
  1677  	// default values are omitted from API requests. See
  1678  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1679  	// details.
  1680  	ForceSendFields []string `json:"-"`
  1681  	// NullFields is a list of field names (e.g. "Certificates") to include in API
  1682  	// requests with the JSON null value. By default, fields with empty values are
  1683  	// omitted from API requests. See
  1684  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1685  	NullFields []string `json:"-"`
  1686  }
  1687  
  1688  func (s *ListAuthorizedCertificatesResponse) MarshalJSON() ([]byte, error) {
  1689  	type NoMethod ListAuthorizedCertificatesResponse
  1690  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1691  }
  1692  
  1693  // ListAuthorizedDomainsResponse: Response message for
  1694  // AuthorizedDomains.ListAuthorizedDomains.
  1695  type ListAuthorizedDomainsResponse struct {
  1696  	// Domains: The authorized domains belonging to the user.
  1697  	Domains []*AuthorizedDomain `json:"domains,omitempty"`
  1698  	// NextPageToken: Continuation token for fetching the next page of results.
  1699  	NextPageToken string `json:"nextPageToken,omitempty"`
  1700  
  1701  	// ServerResponse contains the HTTP response code and headers from the server.
  1702  	googleapi.ServerResponse `json:"-"`
  1703  	// ForceSendFields is a list of field names (e.g. "Domains") to unconditionally
  1704  	// include in API requests. By default, fields with empty or default values are
  1705  	// omitted from API requests. See
  1706  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1707  	// details.
  1708  	ForceSendFields []string `json:"-"`
  1709  	// NullFields is a list of field names (e.g. "Domains") to include in API
  1710  	// requests with the JSON null value. By default, fields with empty values are
  1711  	// omitted from API requests. See
  1712  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1713  	NullFields []string `json:"-"`
  1714  }
  1715  
  1716  func (s *ListAuthorizedDomainsResponse) MarshalJSON() ([]byte, error) {
  1717  	type NoMethod ListAuthorizedDomainsResponse
  1718  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1719  }
  1720  
  1721  // ListDomainMappingsResponse: Response message for
  1722  // DomainMappings.ListDomainMappings.
  1723  type ListDomainMappingsResponse struct {
  1724  	// DomainMappings: The domain mappings for the application.
  1725  	DomainMappings []*DomainMapping `json:"domainMappings,omitempty"`
  1726  	// NextPageToken: Continuation token for fetching the next page of results.
  1727  	NextPageToken string `json:"nextPageToken,omitempty"`
  1728  
  1729  	// ServerResponse contains the HTTP response code and headers from the server.
  1730  	googleapi.ServerResponse `json:"-"`
  1731  	// ForceSendFields is a list of field names (e.g. "DomainMappings") to
  1732  	// unconditionally include in API requests. By default, fields with empty or
  1733  	// default values are omitted from API requests. See
  1734  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1735  	// details.
  1736  	ForceSendFields []string `json:"-"`
  1737  	// NullFields is a list of field names (e.g. "DomainMappings") to include in
  1738  	// API requests with the JSON null value. By default, fields with empty values
  1739  	// are omitted from API requests. See
  1740  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1741  	NullFields []string `json:"-"`
  1742  }
  1743  
  1744  func (s *ListDomainMappingsResponse) MarshalJSON() ([]byte, error) {
  1745  	type NoMethod ListDomainMappingsResponse
  1746  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1747  }
  1748  
  1749  // ListIngressRulesResponse: Response message for Firewall.ListIngressRules.
  1750  type ListIngressRulesResponse struct {
  1751  	// IngressRules: The ingress FirewallRules for this application.
  1752  	IngressRules []*FirewallRule `json:"ingressRules,omitempty"`
  1753  	// NextPageToken: Continuation token for fetching the next page of results.
  1754  	NextPageToken string `json:"nextPageToken,omitempty"`
  1755  
  1756  	// ServerResponse contains the HTTP response code and headers from the server.
  1757  	googleapi.ServerResponse `json:"-"`
  1758  	// ForceSendFields is a list of field names (e.g. "IngressRules") to
  1759  	// unconditionally include in API requests. By default, fields with empty or
  1760  	// default values are omitted from API requests. See
  1761  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1762  	// details.
  1763  	ForceSendFields []string `json:"-"`
  1764  	// NullFields is a list of field names (e.g. "IngressRules") to include in API
  1765  	// requests with the JSON null value. By default, fields with empty values are
  1766  	// omitted from API requests. See
  1767  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1768  	NullFields []string `json:"-"`
  1769  }
  1770  
  1771  func (s *ListIngressRulesResponse) MarshalJSON() ([]byte, error) {
  1772  	type NoMethod ListIngressRulesResponse
  1773  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1774  }
  1775  
  1776  // ListInstancesResponse: Response message for Instances.ListInstances.
  1777  type ListInstancesResponse struct {
  1778  	// Instances: The instances belonging to the requested version.
  1779  	Instances []*Instance `json:"instances,omitempty"`
  1780  	// NextPageToken: Continuation token for fetching the next page of results.
  1781  	NextPageToken string `json:"nextPageToken,omitempty"`
  1782  
  1783  	// ServerResponse contains the HTTP response code and headers from the server.
  1784  	googleapi.ServerResponse `json:"-"`
  1785  	// ForceSendFields is a list of field names (e.g. "Instances") to
  1786  	// unconditionally include in API requests. By default, fields with empty or
  1787  	// default values are omitted from API requests. See
  1788  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1789  	// details.
  1790  	ForceSendFields []string `json:"-"`
  1791  	// NullFields is a list of field names (e.g. "Instances") to include in API
  1792  	// requests with the JSON null value. By default, fields with empty values are
  1793  	// omitted from API requests. See
  1794  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1795  	NullFields []string `json:"-"`
  1796  }
  1797  
  1798  func (s *ListInstancesResponse) MarshalJSON() ([]byte, error) {
  1799  	type NoMethod ListInstancesResponse
  1800  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1801  }
  1802  
  1803  // ListLocationsResponse: The response message for Locations.ListLocations.
  1804  type ListLocationsResponse struct {
  1805  	// Locations: A list of locations that matches the specified filter in the
  1806  	// request.
  1807  	Locations []*Location `json:"locations,omitempty"`
  1808  	// NextPageToken: The standard List next-page token.
  1809  	NextPageToken string `json:"nextPageToken,omitempty"`
  1810  
  1811  	// ServerResponse contains the HTTP response code and headers from the server.
  1812  	googleapi.ServerResponse `json:"-"`
  1813  	// ForceSendFields is a list of field names (e.g. "Locations") to
  1814  	// unconditionally include in API requests. By default, fields with empty or
  1815  	// default values are omitted from API requests. See
  1816  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1817  	// details.
  1818  	ForceSendFields []string `json:"-"`
  1819  	// NullFields is a list of field names (e.g. "Locations") to include in API
  1820  	// requests with the JSON null value. By default, fields with empty values are
  1821  	// omitted from API requests. See
  1822  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1823  	NullFields []string `json:"-"`
  1824  }
  1825  
  1826  func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) {
  1827  	type NoMethod ListLocationsResponse
  1828  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1829  }
  1830  
  1831  // ListOperationsResponse: The response message for Operations.ListOperations.
  1832  type ListOperationsResponse struct {
  1833  	// NextPageToken: The standard List next-page token.
  1834  	NextPageToken string `json:"nextPageToken,omitempty"`
  1835  	// Operations: A list of operations that matches the specified filter in the
  1836  	// request.
  1837  	Operations []*Operation `json:"operations,omitempty"`
  1838  
  1839  	// ServerResponse contains the HTTP response code and headers from the server.
  1840  	googleapi.ServerResponse `json:"-"`
  1841  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1842  	// unconditionally include in API requests. By default, fields with empty or
  1843  	// default values are omitted from API requests. See
  1844  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1845  	// details.
  1846  	ForceSendFields []string `json:"-"`
  1847  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1848  	// requests with the JSON null value. By default, fields with empty values are
  1849  	// omitted from API requests. See
  1850  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1851  	NullFields []string `json:"-"`
  1852  }
  1853  
  1854  func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
  1855  	type NoMethod ListOperationsResponse
  1856  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1857  }
  1858  
  1859  // ListRuntimesResponse: Response message for Applications.ListRuntimes.
  1860  type ListRuntimesResponse struct {
  1861  	// NextPageToken: Continuation token for fetching the next page of results.
  1862  	NextPageToken string `json:"nextPageToken,omitempty"`
  1863  	// Runtimes: The runtimes available to the requested application.
  1864  	Runtimes []*Runtime `json:"runtimes,omitempty"`
  1865  
  1866  	// ServerResponse contains the HTTP response code and headers from the server.
  1867  	googleapi.ServerResponse `json:"-"`
  1868  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1869  	// unconditionally include in API requests. By default, fields with empty or
  1870  	// default values are omitted from API requests. See
  1871  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1872  	// details.
  1873  	ForceSendFields []string `json:"-"`
  1874  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1875  	// requests with the JSON null value. By default, fields with empty values are
  1876  	// omitted from API requests. See
  1877  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1878  	NullFields []string `json:"-"`
  1879  }
  1880  
  1881  func (s *ListRuntimesResponse) MarshalJSON() ([]byte, error) {
  1882  	type NoMethod ListRuntimesResponse
  1883  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1884  }
  1885  
  1886  // ListServicesResponse: Response message for Services.ListServices.
  1887  type ListServicesResponse struct {
  1888  	// NextPageToken: Continuation token for fetching the next page of results.
  1889  	NextPageToken string `json:"nextPageToken,omitempty"`
  1890  	// Services: The services belonging to the requested application.
  1891  	Services []*Service `json:"services,omitempty"`
  1892  
  1893  	// ServerResponse contains the HTTP response code and headers from the server.
  1894  	googleapi.ServerResponse `json:"-"`
  1895  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1896  	// unconditionally include in API requests. By default, fields with empty or
  1897  	// default values are omitted from API requests. See
  1898  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1899  	// details.
  1900  	ForceSendFields []string `json:"-"`
  1901  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1902  	// requests with the JSON null value. By default, fields with empty values are
  1903  	// omitted from API requests. See
  1904  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1905  	NullFields []string `json:"-"`
  1906  }
  1907  
  1908  func (s *ListServicesResponse) MarshalJSON() ([]byte, error) {
  1909  	type NoMethod ListServicesResponse
  1910  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1911  }
  1912  
  1913  // ListVersionsResponse: Response message for Versions.ListVersions.
  1914  type ListVersionsResponse struct {
  1915  	// NextPageToken: Continuation token for fetching the next page of results.
  1916  	NextPageToken string `json:"nextPageToken,omitempty"`
  1917  	// Versions: The versions belonging to the requested service.
  1918  	Versions []*Version `json:"versions,omitempty"`
  1919  
  1920  	// ServerResponse contains the HTTP response code and headers from the server.
  1921  	googleapi.ServerResponse `json:"-"`
  1922  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1923  	// unconditionally include in API requests. By default, fields with empty or
  1924  	// default values are omitted from API requests. See
  1925  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1926  	// details.
  1927  	ForceSendFields []string `json:"-"`
  1928  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1929  	// requests with the JSON null value. By default, fields with empty values are
  1930  	// omitted from API requests. See
  1931  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1932  	NullFields []string `json:"-"`
  1933  }
  1934  
  1935  func (s *ListVersionsResponse) MarshalJSON() ([]byte, error) {
  1936  	type NoMethod ListVersionsResponse
  1937  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1938  }
  1939  
  1940  // LivenessCheck: Health checking configuration for VM instances. Unhealthy
  1941  // instances are killed and replaced with new instances.
  1942  type LivenessCheck struct {
  1943  	// CheckInterval: Interval between health checks.
  1944  	CheckInterval string `json:"checkInterval,omitempty"`
  1945  	// FailureThreshold: Number of consecutive failed checks required before
  1946  	// considering the VM unhealthy.
  1947  	FailureThreshold int64 `json:"failureThreshold,omitempty"`
  1948  	// Host: Host header to send when performing a HTTP Liveness check. Example:
  1949  	// "myapp.appspot.com"
  1950  	Host string `json:"host,omitempty"`
  1951  	// InitialDelay: The initial delay before starting to execute the checks.
  1952  	InitialDelay string `json:"initialDelay,omitempty"`
  1953  	// Path: The request path.
  1954  	Path string `json:"path,omitempty"`
  1955  	// SuccessThreshold: Number of consecutive successful checks required before
  1956  	// considering the VM healthy.
  1957  	SuccessThreshold int64 `json:"successThreshold,omitempty"`
  1958  	// Timeout: Time before the check is considered failed.
  1959  	Timeout string `json:"timeout,omitempty"`
  1960  	// ForceSendFields is a list of field names (e.g. "CheckInterval") to
  1961  	// unconditionally include in API requests. By default, fields with empty or
  1962  	// default values are omitted from API requests. See
  1963  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1964  	// details.
  1965  	ForceSendFields []string `json:"-"`
  1966  	// NullFields is a list of field names (e.g. "CheckInterval") to include in API
  1967  	// requests with the JSON null value. By default, fields with empty values are
  1968  	// omitted from API requests. See
  1969  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1970  	NullFields []string `json:"-"`
  1971  }
  1972  
  1973  func (s *LivenessCheck) MarshalJSON() ([]byte, error) {
  1974  	type NoMethod LivenessCheck
  1975  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1976  }
  1977  
  1978  // Location: A resource that represents a Google Cloud location.
  1979  type Location struct {
  1980  	// DisplayName: The friendly name for this location, typically a nearby city
  1981  	// name. For example, "Tokyo".
  1982  	DisplayName string `json:"displayName,omitempty"`
  1983  	// Labels: Cross-service attributes for the location. For example
  1984  	// {"cloud.googleapis.com/region": "us-east1"}
  1985  	Labels map[string]string `json:"labels,omitempty"`
  1986  	// LocationId: The canonical id for this location. For example: "us-east1".
  1987  	LocationId string `json:"locationId,omitempty"`
  1988  	// Metadata: Service-specific metadata. For example the available capacity at
  1989  	// the given location.
  1990  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  1991  	// Name: Resource name for the location, which may vary between
  1992  	// implementations. For example: "projects/example-project/locations/us-east1"
  1993  	Name string `json:"name,omitempty"`
  1994  
  1995  	// ServerResponse contains the HTTP response code and headers from the server.
  1996  	googleapi.ServerResponse `json:"-"`
  1997  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1998  	// unconditionally include in API requests. By default, fields with empty or
  1999  	// default values are omitted from API requests. See
  2000  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2001  	// details.
  2002  	ForceSendFields []string `json:"-"`
  2003  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  2004  	// requests with the JSON null value. By default, fields with empty values are
  2005  	// omitted from API requests. See
  2006  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2007  	NullFields []string `json:"-"`
  2008  }
  2009  
  2010  func (s *Location) MarshalJSON() ([]byte, error) {
  2011  	type NoMethod Location
  2012  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2013  }
  2014  
  2015  // LocationMetadata: Metadata for the given google.cloud.location.Location.
  2016  type LocationMetadata struct {
  2017  	// FlexibleEnvironmentAvailable: App Engine flexible environment is available
  2018  	// in the given location.@OutputOnly
  2019  	FlexibleEnvironmentAvailable bool `json:"flexibleEnvironmentAvailable,omitempty"`
  2020  	// SearchApiAvailable: Output only. Search API
  2021  	// (https://cloud.google.com/appengine/docs/standard/python/search) is
  2022  	// available in the given location.
  2023  	SearchApiAvailable bool `json:"searchApiAvailable,omitempty"`
  2024  	// StandardEnvironmentAvailable: App Engine standard environment is available
  2025  	// in the given location.@OutputOnly
  2026  	StandardEnvironmentAvailable bool `json:"standardEnvironmentAvailable,omitempty"`
  2027  	// ForceSendFields is a list of field names (e.g.
  2028  	// "FlexibleEnvironmentAvailable") to unconditionally include in API requests.
  2029  	// By default, fields with empty or default values are omitted from API
  2030  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  2031  	// for more details.
  2032  	ForceSendFields []string `json:"-"`
  2033  	// NullFields is a list of field names (e.g. "FlexibleEnvironmentAvailable") to
  2034  	// include in API requests with the JSON null value. By default, fields with
  2035  	// empty values are omitted from API requests. See
  2036  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2037  	NullFields []string `json:"-"`
  2038  }
  2039  
  2040  func (s *LocationMetadata) MarshalJSON() ([]byte, error) {
  2041  	type NoMethod LocationMetadata
  2042  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2043  }
  2044  
  2045  // ManagedCertificate: A certificate managed by App Engine.
  2046  type ManagedCertificate struct {
  2047  	// LastRenewalTime: Time at which the certificate was last renewed. The renewal
  2048  	// process is fully managed. Certificate renewal will automatically occur
  2049  	// before the certificate expires. Renewal errors can be tracked via
  2050  	// ManagementStatus.@OutputOnly
  2051  	LastRenewalTime string `json:"lastRenewalTime,omitempty"`
  2052  	// Status: Status of certificate management. Refers to the most recent
  2053  	// certificate acquisition or renewal attempt.@OutputOnly
  2054  	//
  2055  	// Possible values:
  2056  	//   "MANAGEMENT_STATUS_UNSPECIFIED"
  2057  	//   "OK" - Certificate was successfully obtained and inserted into the serving
  2058  	// system.
  2059  	//   "PENDING" - Certificate is under active attempts to acquire or renew.
  2060  	//   "FAILED_RETRYING_NOT_VISIBLE" - Most recent renewal failed due to an
  2061  	// invalid DNS setup and will be retried. Renewal attempts will continue to
  2062  	// fail until the certificate domain's DNS configuration is fixed. The last
  2063  	// successfully provisioned certificate may still be serving.
  2064  	//   "FAILED_PERMANENT" - All renewal attempts have been exhausted, likely due
  2065  	// to an invalid DNS setup.
  2066  	//   "FAILED_RETRYING_CAA_FORBIDDEN" - Most recent renewal failed due to an
  2067  	// explicit CAA record that does not include one of the in-use CAs (Google CA
  2068  	// and Let's Encrypt). Renewals will continue to fail until the CAA is
  2069  	// reconfigured. The last successfully provisioned certificate may still be
  2070  	// serving.
  2071  	//   "FAILED_RETRYING_CAA_CHECKING" - Most recent renewal failed due to a CAA
  2072  	// retrieval failure. This means that the domain's DNS provider does not
  2073  	// properly handle CAA records, failing requests for CAA records when no CAA
  2074  	// records are defined. Renewals will continue to fail until the DNS provider
  2075  	// is changed or a CAA record is added for the given domain. The last
  2076  	// successfully provisioned certificate may still be serving.
  2077  	Status string `json:"status,omitempty"`
  2078  	// ForceSendFields is a list of field names (e.g. "LastRenewalTime") to
  2079  	// unconditionally include in API requests. By default, fields with empty or
  2080  	// default values are omitted from API requests. See
  2081  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2082  	// details.
  2083  	ForceSendFields []string `json:"-"`
  2084  	// NullFields is a list of field names (e.g. "LastRenewalTime") to include in
  2085  	// API requests with the JSON null value. By default, fields with empty values
  2086  	// are omitted from API requests. See
  2087  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2088  	NullFields []string `json:"-"`
  2089  }
  2090  
  2091  func (s *ManagedCertificate) MarshalJSON() ([]byte, error) {
  2092  	type NoMethod ManagedCertificate
  2093  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2094  }
  2095  
  2096  // ManualScaling: A service with manual scaling runs continuously, allowing you
  2097  // to perform complex initialization and rely on the state of its memory over
  2098  // time.
  2099  type ManualScaling struct {
  2100  	// Instances: Number of instances to assign to the service at the start. This
  2101  	// number can later be altered by using the Modules API
  2102  	// (https://cloud.google.com/appengine/docs/python/modules/functions)
  2103  	// set_num_instances() function.
  2104  	Instances int64 `json:"instances,omitempty"`
  2105  	// ForceSendFields is a list of field names (e.g. "Instances") to
  2106  	// unconditionally include in API requests. By default, fields with empty or
  2107  	// default values are omitted from API requests. See
  2108  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2109  	// details.
  2110  	ForceSendFields []string `json:"-"`
  2111  	// NullFields is a list of field names (e.g. "Instances") to include in API
  2112  	// requests with the JSON null value. By default, fields with empty values are
  2113  	// omitted from API requests. See
  2114  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2115  	NullFields []string `json:"-"`
  2116  }
  2117  
  2118  func (s *ManualScaling) MarshalJSON() ([]byte, error) {
  2119  	type NoMethod ManualScaling
  2120  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2121  }
  2122  
  2123  // Network: Extra network settings. Only applicable in the App Engine flexible
  2124  // environment.
  2125  type Network struct {
  2126  	// ForwardedPorts: List of ports, or port pairs, to forward from the virtual
  2127  	// machine to the application container. Only applicable in the App Engine
  2128  	// flexible environment.
  2129  	ForwardedPorts []string `json:"forwardedPorts,omitempty"`
  2130  	// InstanceIpMode: The IP mode for instances. Only applicable in the App Engine
  2131  	// flexible environment.
  2132  	//
  2133  	// Possible values:
  2134  	//   "INSTANCE_IP_MODE_UNSPECIFIED" - Unspecified is treated as EXTERNAL.
  2135  	//   "EXTERNAL" - Instances are created with both internal and external IP
  2136  	// addresses.
  2137  	//   "INTERNAL" - Instances are created with internal IP addresses only.
  2138  	InstanceIpMode string `json:"instanceIpMode,omitempty"`
  2139  	// InstanceTag: Tag to apply to the instance during creation. Only applicable
  2140  	// in the App Engine flexible environment.
  2141  	InstanceTag string `json:"instanceTag,omitempty"`
  2142  	// Name: Google Compute Engine network where the virtual machines are created.
  2143  	// Specify the short name, not the resource path.Defaults to default.
  2144  	Name string `json:"name,omitempty"`
  2145  	// SessionAffinity: Enable session affinity. Only applicable in the App Engine
  2146  	// flexible environment.
  2147  	SessionAffinity bool `json:"sessionAffinity,omitempty"`
  2148  	// SubnetworkName: Google Cloud Platform sub-network where the virtual machines
  2149  	// are created. Specify the short name, not the resource path.If a subnetwork
  2150  	// name is specified, a network name will also be required unless it is for the
  2151  	// default network. If the network that the instance is being created in is a
  2152  	// Legacy network, then the IP address is allocated from the IPv4Range. If the
  2153  	// network that the instance is being created in is an auto Subnet Mode
  2154  	// Network, then only network name should be specified (not the
  2155  	// subnetwork_name) and the IP address is created from the IPCidrRange of the
  2156  	// subnetwork that exists in that zone for that network. If the network that
  2157  	// the instance is being created in is a custom Subnet Mode Network, then the
  2158  	// subnetwork_name must be specified and the IP address is created from the
  2159  	// IPCidrRange of the subnetwork.If specified, the subnetwork must exist in the
  2160  	// same region as the App Engine flexible environment application.
  2161  	SubnetworkName string `json:"subnetworkName,omitempty"`
  2162  	// ForceSendFields is a list of field names (e.g. "ForwardedPorts") to
  2163  	// unconditionally include in API requests. By default, fields with empty or
  2164  	// default values are omitted from API requests. See
  2165  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2166  	// details.
  2167  	ForceSendFields []string `json:"-"`
  2168  	// NullFields is a list of field names (e.g. "ForwardedPorts") to include in
  2169  	// API requests with the JSON null value. By default, fields with empty values
  2170  	// are omitted from API requests. See
  2171  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2172  	NullFields []string `json:"-"`
  2173  }
  2174  
  2175  func (s *Network) MarshalJSON() ([]byte, error) {
  2176  	type NoMethod Network
  2177  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2178  }
  2179  
  2180  // NetworkSettings: A NetworkSettings resource is a container for ingress
  2181  // settings for a version or service.
  2182  type NetworkSettings struct {
  2183  	// IngressTrafficAllowed: The ingress settings for version or service.
  2184  	//
  2185  	// Possible values:
  2186  	//   "INGRESS_TRAFFIC_ALLOWED_UNSPECIFIED" - Unspecified
  2187  	//   "INGRESS_TRAFFIC_ALLOWED_ALL" - Allow HTTP traffic from public and private
  2188  	// sources.
  2189  	//   "INGRESS_TRAFFIC_ALLOWED_INTERNAL_ONLY" - Allow HTTP traffic from only
  2190  	// private VPC sources.
  2191  	//   "INGRESS_TRAFFIC_ALLOWED_INTERNAL_AND_LB" - Allow HTTP traffic from
  2192  	// private VPC sources and through load balancers.
  2193  	IngressTrafficAllowed string `json:"ingressTrafficAllowed,omitempty"`
  2194  	// ForceSendFields is a list of field names (e.g. "IngressTrafficAllowed") to
  2195  	// unconditionally include in API requests. By default, fields with empty or
  2196  	// default values are omitted from API requests. See
  2197  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2198  	// details.
  2199  	ForceSendFields []string `json:"-"`
  2200  	// NullFields is a list of field names (e.g. "IngressTrafficAllowed") to
  2201  	// include in API requests with the JSON null value. By default, fields with
  2202  	// empty values are omitted from API requests. See
  2203  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2204  	NullFields []string `json:"-"`
  2205  }
  2206  
  2207  func (s *NetworkSettings) MarshalJSON() ([]byte, error) {
  2208  	type NoMethod NetworkSettings
  2209  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2210  }
  2211  
  2212  // NetworkUtilization: Target scaling by network usage. Only applicable in the
  2213  // App Engine flexible environment.
  2214  type NetworkUtilization struct {
  2215  	// TargetReceivedBytesPerSecond: Target bytes received per second.
  2216  	TargetReceivedBytesPerSecond int64 `json:"targetReceivedBytesPerSecond,omitempty"`
  2217  	// TargetReceivedPacketsPerSecond: Target packets received per second.
  2218  	TargetReceivedPacketsPerSecond int64 `json:"targetReceivedPacketsPerSecond,omitempty"`
  2219  	// TargetSentBytesPerSecond: Target bytes sent per second.
  2220  	TargetSentBytesPerSecond int64 `json:"targetSentBytesPerSecond,omitempty"`
  2221  	// TargetSentPacketsPerSecond: Target packets sent per second.
  2222  	TargetSentPacketsPerSecond int64 `json:"targetSentPacketsPerSecond,omitempty"`
  2223  	// ForceSendFields is a list of field names (e.g.
  2224  	// "TargetReceivedBytesPerSecond") to unconditionally include in API requests.
  2225  	// By default, fields with empty or default values are omitted from API
  2226  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  2227  	// for more details.
  2228  	ForceSendFields []string `json:"-"`
  2229  	// NullFields is a list of field names (e.g. "TargetReceivedBytesPerSecond") to
  2230  	// include in API requests with the JSON null value. By default, fields with
  2231  	// empty values are omitted from API requests. See
  2232  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2233  	NullFields []string `json:"-"`
  2234  }
  2235  
  2236  func (s *NetworkUtilization) MarshalJSON() ([]byte, error) {
  2237  	type NoMethod NetworkUtilization
  2238  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2239  }
  2240  
  2241  // Operation: This resource represents a long-running operation that is the
  2242  // result of a network API call.
  2243  type Operation struct {
  2244  	// Done: If the value is false, it means the operation is still in progress. If
  2245  	// true, the operation is completed, and either error or response is available.
  2246  	Done bool `json:"done,omitempty"`
  2247  	// Error: The error result of the operation in case of failure or cancellation.
  2248  	Error *Status `json:"error,omitempty"`
  2249  	// Metadata: Service-specific metadata associated with the operation. It
  2250  	// typically contains progress information and common metadata such as create
  2251  	// time. Some services might not provide such metadata. Any method that returns
  2252  	// a long-running operation should document the metadata type, if any.
  2253  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  2254  	// Name: The server-assigned name, which is only unique within the same service
  2255  	// that originally returns it. If you use the default HTTP mapping, the name
  2256  	// should be a resource name ending with operations/{unique_id}.
  2257  	Name string `json:"name,omitempty"`
  2258  	// Response: The normal, successful response of the operation. If the original
  2259  	// method returns no data on success, such as Delete, the response is
  2260  	// google.protobuf.Empty. If the original method is standard Get/Create/Update,
  2261  	// the response should be the resource. For other methods, the response should
  2262  	// have the type XxxResponse, where Xxx is the original method name. For
  2263  	// example, if the original method name is TakeSnapshot(), the inferred
  2264  	// response type is TakeSnapshotResponse.
  2265  	Response googleapi.RawMessage `json:"response,omitempty"`
  2266  
  2267  	// ServerResponse contains the HTTP response code and headers from the server.
  2268  	googleapi.ServerResponse `json:"-"`
  2269  	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
  2270  	// include in API requests. By default, fields with empty or default values are
  2271  	// omitted from API requests. See
  2272  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2273  	// details.
  2274  	ForceSendFields []string `json:"-"`
  2275  	// NullFields is a list of field names (e.g. "Done") to include in API requests
  2276  	// with the JSON null value. By default, fields with empty values are omitted
  2277  	// from API requests. See
  2278  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2279  	NullFields []string `json:"-"`
  2280  }
  2281  
  2282  func (s *Operation) MarshalJSON() ([]byte, error) {
  2283  	type NoMethod Operation
  2284  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2285  }
  2286  
  2287  // OperationMetadataV1: Metadata for the given google.longrunning.Operation.
  2288  type OperationMetadataV1 struct {
  2289  	CreateVersionMetadata *CreateVersionMetadataV1 `json:"createVersionMetadata,omitempty"`
  2290  	// EndTime: Time that this operation completed.@OutputOnly
  2291  	EndTime string `json:"endTime,omitempty"`
  2292  	// EphemeralMessage: Ephemeral message that may change every time the operation
  2293  	// is polled. @OutputOnly
  2294  	EphemeralMessage string `json:"ephemeralMessage,omitempty"`
  2295  	// InsertTime: Time that this operation was created.@OutputOnly
  2296  	InsertTime string `json:"insertTime,omitempty"`
  2297  	// Method: API method that initiated this operation. Example:
  2298  	// google.appengine.v1.Versions.CreateVersion.@OutputOnly
  2299  	Method string `json:"method,omitempty"`
  2300  	// Target: Name of the resource that this operation is acting on. Example:
  2301  	// apps/myapp/services/default.@OutputOnly
  2302  	Target string `json:"target,omitempty"`
  2303  	// User: User who requested this operation.@OutputOnly
  2304  	User string `json:"user,omitempty"`
  2305  	// Warning: Durable messages that persist on every operation poll. @OutputOnly
  2306  	Warning []string `json:"warning,omitempty"`
  2307  	// ForceSendFields is a list of field names (e.g. "CreateVersionMetadata") to
  2308  	// unconditionally include in API requests. By default, fields with empty or
  2309  	// default values are omitted from API requests. See
  2310  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2311  	// details.
  2312  	ForceSendFields []string `json:"-"`
  2313  	// NullFields is a list of field names (e.g. "CreateVersionMetadata") to
  2314  	// include in API requests with the JSON null value. By default, fields with
  2315  	// empty values are omitted from API requests. See
  2316  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2317  	NullFields []string `json:"-"`
  2318  }
  2319  
  2320  func (s *OperationMetadataV1) MarshalJSON() ([]byte, error) {
  2321  	type NoMethod OperationMetadataV1
  2322  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2323  }
  2324  
  2325  // OperationMetadataV1Alpha: Metadata for the given
  2326  // google.longrunning.Operation.
  2327  type OperationMetadataV1Alpha struct {
  2328  	CreateVersionMetadata *CreateVersionMetadataV1Alpha `json:"createVersionMetadata,omitempty"`
  2329  	// EndTime: Time that this operation completed.@OutputOnly
  2330  	EndTime string `json:"endTime,omitempty"`
  2331  	// EphemeralMessage: Ephemeral message that may change every time the operation
  2332  	// is polled. @OutputOnly
  2333  	EphemeralMessage string `json:"ephemeralMessage,omitempty"`
  2334  	// InsertTime: Time that this operation was created.@OutputOnly
  2335  	InsertTime string `json:"insertTime,omitempty"`
  2336  	// Method: API method that initiated this operation. Example:
  2337  	// google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly
  2338  	Method string `json:"method,omitempty"`
  2339  	// Target: Name of the resource that this operation is acting on. Example:
  2340  	// apps/myapp/services/default.@OutputOnly
  2341  	Target string `json:"target,omitempty"`
  2342  	// User: User who requested this operation.@OutputOnly
  2343  	User string `json:"user,omitempty"`
  2344  	// Warning: Durable messages that persist on every operation poll. @OutputOnly
  2345  	Warning []string `json:"warning,omitempty"`
  2346  	// ForceSendFields is a list of field names (e.g. "CreateVersionMetadata") to
  2347  	// unconditionally include in API requests. By default, fields with empty or
  2348  	// default values are omitted from API requests. See
  2349  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2350  	// details.
  2351  	ForceSendFields []string `json:"-"`
  2352  	// NullFields is a list of field names (e.g. "CreateVersionMetadata") to
  2353  	// include in API requests with the JSON null value. By default, fields with
  2354  	// empty values are omitted from API requests. See
  2355  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2356  	NullFields []string `json:"-"`
  2357  }
  2358  
  2359  func (s *OperationMetadataV1Alpha) MarshalJSON() ([]byte, error) {
  2360  	type NoMethod OperationMetadataV1Alpha
  2361  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2362  }
  2363  
  2364  // OperationMetadataV1Beta: Metadata for the given
  2365  // google.longrunning.Operation.
  2366  type OperationMetadataV1Beta struct {
  2367  	CreateVersionMetadata *CreateVersionMetadataV1Beta `json:"createVersionMetadata,omitempty"`
  2368  	// EndTime: Time that this operation completed.@OutputOnly
  2369  	EndTime string `json:"endTime,omitempty"`
  2370  	// EphemeralMessage: Ephemeral message that may change every time the operation
  2371  	// is polled. @OutputOnly
  2372  	EphemeralMessage string `json:"ephemeralMessage,omitempty"`
  2373  	// InsertTime: Time that this operation was created.@OutputOnly
  2374  	InsertTime string `json:"insertTime,omitempty"`
  2375  	// Method: API method that initiated this operation. Example:
  2376  	// google.appengine.v1beta.Versions.CreateVersion.@OutputOnly
  2377  	Method string `json:"method,omitempty"`
  2378  	// Target: Name of the resource that this operation is acting on. Example:
  2379  	// apps/myapp/services/default.@OutputOnly
  2380  	Target string `json:"target,omitempty"`
  2381  	// User: User who requested this operation.@OutputOnly
  2382  	User string `json:"user,omitempty"`
  2383  	// Warning: Durable messages that persist on every operation poll. @OutputOnly
  2384  	Warning []string `json:"warning,omitempty"`
  2385  	// ForceSendFields is a list of field names (e.g. "CreateVersionMetadata") to
  2386  	// unconditionally include in API requests. By default, fields with empty or
  2387  	// default values are omitted from API requests. See
  2388  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2389  	// details.
  2390  	ForceSendFields []string `json:"-"`
  2391  	// NullFields is a list of field names (e.g. "CreateVersionMetadata") to
  2392  	// include in API requests with the JSON null value. By default, fields with
  2393  	// empty values are omitted from API requests. See
  2394  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2395  	NullFields []string `json:"-"`
  2396  }
  2397  
  2398  func (s *OperationMetadataV1Beta) MarshalJSON() ([]byte, error) {
  2399  	type NoMethod OperationMetadataV1Beta
  2400  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2401  }
  2402  
  2403  // ProjectEvent: The request sent to CLHs during project events.
  2404  type ProjectEvent struct {
  2405  	// EventId: The unique ID for this project event. CLHs can use this value to
  2406  	// dedup repeated calls. required
  2407  	EventId string `json:"eventId,omitempty"`
  2408  	// Phase: Phase indicates when in the container event propagation this event is
  2409  	// being communicated. Events are sent before and after the per-resource events
  2410  	// are propagated. required
  2411  	//
  2412  	// Possible values:
  2413  	//   "CONTAINER_EVENT_PHASE_UNSPECIFIED"
  2414  	//   "BEFORE_RESOURCE_HANDLING"
  2415  	//   "AFTER_RESOURCE_HANDLING"
  2416  	Phase string `json:"phase,omitempty"`
  2417  	// ProjectMetadata: The projects metadata for this project. required
  2418  	ProjectMetadata *ProjectsMetadata `json:"projectMetadata,omitempty"`
  2419  	// State: The state of the organization that led to this event.
  2420  	State *ContainerState `json:"state,omitempty"`
  2421  	// ForceSendFields is a list of field names (e.g. "EventId") to unconditionally
  2422  	// include in API requests. By default, fields with empty or default values are
  2423  	// omitted from API requests. See
  2424  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2425  	// details.
  2426  	ForceSendFields []string `json:"-"`
  2427  	// NullFields is a list of field names (e.g. "EventId") to include in API
  2428  	// requests with the JSON null value. By default, fields with empty values are
  2429  	// omitted from API requests. See
  2430  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2431  	NullFields []string `json:"-"`
  2432  }
  2433  
  2434  func (s *ProjectEvent) MarshalJSON() ([]byte, error) {
  2435  	type NoMethod ProjectEvent
  2436  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2437  }
  2438  
  2439  // ProjectsMetadata: ProjectsMetadata is the metadata CCFE stores about the all
  2440  // the relevant projects (tenant, consumer, producer).
  2441  type ProjectsMetadata struct {
  2442  	// ConsumerProjectId: The consumer project id.
  2443  	ConsumerProjectId string `json:"consumerProjectId,omitempty"`
  2444  	// ConsumerProjectNumber: The consumer project number.
  2445  	ConsumerProjectNumber int64 `json:"consumerProjectNumber,omitempty,string"`
  2446  	// ConsumerProjectState: The CCFE state of the consumer project. It is the same
  2447  	// state that is communicated to the CLH during project events. Notice that
  2448  	// this field is not set in the DB, it is only set in this proto when
  2449  	// communicated to CLH in the side channel.
  2450  	//
  2451  	// Possible values:
  2452  	//   "UNKNOWN_STATE" - A container should never be in an unknown state. Receipt
  2453  	// of a container with this state is an error.
  2454  	//   "ON" - CCFE considers the container to be serving or transitioning into
  2455  	// serving.
  2456  	//   "OFF" - CCFE considers the container to be in an OFF state. This could
  2457  	// occur due to various factors. The state could be triggered by
  2458  	// Google-internal audits (ex. abuse suspension, billing closed) or cleanups
  2459  	// trigged by compliance systems (ex. data governance hide). User-initiated
  2460  	// events such as service management deactivation trigger a container to an OFF
  2461  	// state.CLHs might choose to do nothing in this case or to turn off costly
  2462  	// resources. CLHs need to consider the customer experience if an ON/OFF/ON
  2463  	// sequence of state transitions occurs vs. the cost of deleting resources,
  2464  	// keeping metadata about resources, or even keeping resources live for a
  2465  	// period of time.CCFE will not send any new customer requests to the CLH when
  2466  	// the container is in an OFF state. However, CCFE will allow all previous
  2467  	// customer requests relayed to CLH to complete.
  2468  	//   "DELETED" - This state indicates that the container has been (or is being)
  2469  	// completely removed. This is often due to a data governance purge request and
  2470  	// therefore resources should be deleted when this state is reached.
  2471  	ConsumerProjectState string `json:"consumerProjectState,omitempty"`
  2472  	// P4ServiceAccount: The service account authorized to operate on the consumer
  2473  	// project. Note: CCFE only propagates P4SA with default tag to CLH.
  2474  	P4ServiceAccount string `json:"p4ServiceAccount,omitempty"`
  2475  	// ProducerProjectId: The producer project id.
  2476  	ProducerProjectId string `json:"producerProjectId,omitempty"`
  2477  	// ProducerProjectNumber: The producer project number.
  2478  	ProducerProjectNumber int64 `json:"producerProjectNumber,omitempty,string"`
  2479  	// TenantProjectId: The tenant project id.
  2480  	TenantProjectId string `json:"tenantProjectId,omitempty"`
  2481  	// TenantProjectNumber: The tenant project number.
  2482  	TenantProjectNumber int64 `json:"tenantProjectNumber,omitempty,string"`
  2483  	// ForceSendFields is a list of field names (e.g. "ConsumerProjectId") to
  2484  	// unconditionally include in API requests. By default, fields with empty or
  2485  	// default values are omitted from API requests. See
  2486  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2487  	// details.
  2488  	ForceSendFields []string `json:"-"`
  2489  	// NullFields is a list of field names (e.g. "ConsumerProjectId") to include in
  2490  	// API requests with the JSON null value. By default, fields with empty values
  2491  	// are omitted from API requests. See
  2492  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2493  	NullFields []string `json:"-"`
  2494  }
  2495  
  2496  func (s *ProjectsMetadata) MarshalJSON() ([]byte, error) {
  2497  	type NoMethod ProjectsMetadata
  2498  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2499  }
  2500  
  2501  // ReadinessCheck: Readiness checking configuration for VM instances. Unhealthy
  2502  // instances are removed from traffic rotation.
  2503  type ReadinessCheck struct {
  2504  	// AppStartTimeout: A maximum time limit on application initialization,
  2505  	// measured from moment the application successfully replies to a healthcheck
  2506  	// until it is ready to serve traffic.
  2507  	AppStartTimeout string `json:"appStartTimeout,omitempty"`
  2508  	// CheckInterval: Interval between health checks.
  2509  	CheckInterval string `json:"checkInterval,omitempty"`
  2510  	// FailureThreshold: Number of consecutive failed checks required before
  2511  	// removing traffic.
  2512  	FailureThreshold int64 `json:"failureThreshold,omitempty"`
  2513  	// Host: Host header to send when performing a HTTP Readiness check. Example:
  2514  	// "myapp.appspot.com"
  2515  	Host string `json:"host,omitempty"`
  2516  	// Path: The request path.
  2517  	Path string `json:"path,omitempty"`
  2518  	// SuccessThreshold: Number of consecutive successful checks required before
  2519  	// receiving traffic.
  2520  	SuccessThreshold int64 `json:"successThreshold,omitempty"`
  2521  	// Timeout: Time before the check is considered failed.
  2522  	Timeout string `json:"timeout,omitempty"`
  2523  	// ForceSendFields is a list of field names (e.g. "AppStartTimeout") to
  2524  	// unconditionally include in API requests. By default, fields with empty or
  2525  	// default values are omitted from API requests. See
  2526  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2527  	// details.
  2528  	ForceSendFields []string `json:"-"`
  2529  	// NullFields is a list of field names (e.g. "AppStartTimeout") to include in
  2530  	// API requests with the JSON null value. By default, fields with empty values
  2531  	// are omitted from API requests. See
  2532  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2533  	NullFields []string `json:"-"`
  2534  }
  2535  
  2536  func (s *ReadinessCheck) MarshalJSON() ([]byte, error) {
  2537  	type NoMethod ReadinessCheck
  2538  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2539  }
  2540  
  2541  // Reasons: Containers transition between and within states based on reasons
  2542  // sent from various systems. CCFE will provide the CLH with reasons for the
  2543  // current state per system.The current systems that CCFE supports are: Service
  2544  // Management (Inception) Data Governance (Wipeout) Abuse (Ares) Billing
  2545  // (Internal Cloud Billing API) Service Activation (Service Controller)
  2546  type Reasons struct {
  2547  	// Possible values:
  2548  	//   "ABUSE_UNKNOWN_REASON" - An unknown reason indicates that the abuse system
  2549  	// has not sent a signal for this container.
  2550  	//   "ABUSE_CONTROL_PLANE_SYNC" - Due to various reasons CCFE might proactively
  2551  	// restate a container state to a CLH to ensure that the CLH and CCFE are both
  2552  	// aware of the container state. This reason can be tied to any of the states.
  2553  	//   "SUSPEND" - If a container is deemed abusive we receive a suspend signal.
  2554  	// Suspend is a reason to put the container into an INTERNAL_OFF state.
  2555  	//   "REINSTATE" - Containers that were once considered abusive can later be
  2556  	// deemed non-abusive. When this happens we must reinstate the container.
  2557  	// Reinstate is a reason to put the container into an ON state.
  2558  	Abuse string `json:"abuse,omitempty"`
  2559  	// Possible values:
  2560  	//   "BILLING_UNKNOWN_REASON" - An unknown reason indicates that the billing
  2561  	// system has not sent a signal for this container.
  2562  	//   "BILLING_CONTROL_PLANE_SYNC" - Due to various reasons CCFE might
  2563  	// proactively restate a container state to a CLH to ensure that the CLH and
  2564  	// CCFE are both aware of the container state. This reason can be tied to any
  2565  	// of the states.
  2566  	//   "PROBATION" - Minor infractions cause a probation signal to be sent.
  2567  	// Probation is a reason to put the container into a ON state even though it is
  2568  	// a negative signal. CCFE will block mutations for this container while it is
  2569  	// on billing probation, but the CLH is expected to serve non-mutation
  2570  	// requests.
  2571  	//   "CLOSE" - When a billing account is closed, it is a stronger signal about
  2572  	// non-payment. Close is a reason to put the container into an INTERNAL_OFF
  2573  	// state.
  2574  	//   "OPEN" - Consumers can re-open billing accounts and update accounts to
  2575  	// pull them out of probation. When this happens, we get a signal that the
  2576  	// account is open. Open is a reason to put the container into an ON state.
  2577  	Billing string `json:"billing,omitempty"`
  2578  	// Possible values:
  2579  	//   "DATA_GOVERNANCE_UNKNOWN_REASON" - An unknown reason indicates that data
  2580  	// governance has not sent a signal for this container.
  2581  	//   "DATA_GOVERNANCE_CONTROL_PLANE_SYNC" - Due to various reasons CCFE might
  2582  	// proactively restate a container state to a CLH to ensure that the CLH and
  2583  	// CCFE are both aware of the container state. This reason can be tied to any
  2584  	// of the states.
  2585  	//   "HIDE" - When a container is deleted we retain some data for a period of
  2586  	// time to allow the consumer to change their mind. Data governance sends a
  2587  	// signal to hide the data when this occurs. Hide is a reason to put the
  2588  	// container in an INTERNAL_OFF state.
  2589  	//   "UNHIDE" - The decision to un-delete a container can be made. When this
  2590  	// happens data governance tells us to unhide any hidden data. Unhide is a
  2591  	// reason to put the container in an ON state.
  2592  	//   "PURGE" - After a period of time data must be completely removed from our
  2593  	// systems. When data governance sends a purge signal we need to remove data.
  2594  	// Purge is a reason to put the container in a DELETED state. Purge is the only
  2595  	// event that triggers a delete mutation. All other events have update
  2596  	// semantics.
  2597  	DataGovernance string `json:"dataGovernance,omitempty"`
  2598  	// ServiceActivation: Consumer Container denotes if the service is active
  2599  	// within a project or not. This information could be used to clean up
  2600  	// resources in case service in DISABLED_FULL i.e. Service is inactive > 30
  2601  	// days.
  2602  	//
  2603  	// Possible values:
  2604  	//   "SERVICE_ACTIVATION_STATUS_UNSPECIFIED" - Default Unspecified status
  2605  	//   "SERVICE_ACTIVATION_ENABLED" - Service is active in the project.
  2606  	//   "SERVICE_ACTIVATION_DISABLED" - Service is disabled in the project
  2607  	// recently i.e., within last 24 hours.
  2608  	//   "SERVICE_ACTIVATION_DISABLED_FULL" - Service has been disabled for
  2609  	// configured grace_period (default 30 days).
  2610  	//   "SERVICE_ACTIVATION_UNKNOWN_REASON" - Happens when PSM cannot determine
  2611  	// the status of service in a project Could happen due to variety of reasons
  2612  	// like PERMISSION_DENIED or Project got deleted etc.
  2613  	ServiceActivation string `json:"serviceActivation,omitempty"`
  2614  	// Possible values:
  2615  	//   "SERVICE_MANAGEMENT_UNKNOWN_REASON" - An unknown reason indicates that we
  2616  	// have not received a signal from service management about this container.
  2617  	// Since containers are created by request of service management, this reason
  2618  	// should never be set.
  2619  	//   "SERVICE_MANAGEMENT_CONTROL_PLANE_SYNC" - Due to various reasons CCFE
  2620  	// might proactively restate a container state to a CLH to ensure that the CLH
  2621  	// and CCFE are both aware of the container state. This reason can be tied to
  2622  	// any of the states.
  2623  	//   "ACTIVATION" - When a customer activates an API CCFE notifies the CLH and
  2624  	// sets the container to the ON state.
  2625  	//   "PREPARE_DEACTIVATION" - When a customer deactivates and API service
  2626  	// management starts a two-step process to perform the deactivation. The first
  2627  	// step is to prepare. Prepare is a reason to put the container in a
  2628  	// EXTERNAL_OFF state.
  2629  	//   "ABORT_DEACTIVATION" - If the deactivation is cancelled, service managed
  2630  	// needs to abort the deactivation. Abort is a reason to put the container in
  2631  	// an ON state.
  2632  	//   "COMMIT_DEACTIVATION" - If the deactivation is followed through with,
  2633  	// service management needs to finish deactivation. Commit is a reason to put
  2634  	// the container in a DELETED state.
  2635  	ServiceManagement string `json:"serviceManagement,omitempty"`
  2636  	// ForceSendFields is a list of field names (e.g. "Abuse") to unconditionally
  2637  	// include in API requests. By default, fields with empty or default values are
  2638  	// omitted from API requests. See
  2639  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2640  	// details.
  2641  	ForceSendFields []string `json:"-"`
  2642  	// NullFields is a list of field names (e.g. "Abuse") to include in API
  2643  	// requests with the JSON null value. By default, fields with empty values are
  2644  	// omitted from API requests. See
  2645  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2646  	NullFields []string `json:"-"`
  2647  }
  2648  
  2649  func (s *Reasons) MarshalJSON() ([]byte, error) {
  2650  	type NoMethod Reasons
  2651  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2652  }
  2653  
  2654  // RepairApplicationRequest: Request message for
  2655  // 'Applications.RepairApplication'.
  2656  type RepairApplicationRequest struct {
  2657  }
  2658  
  2659  // RequestUtilization: Target scaling by request utilization. Only applicable
  2660  // in the App Engine flexible environment.
  2661  type RequestUtilization struct {
  2662  	// TargetConcurrentRequests: Target number of concurrent requests.
  2663  	TargetConcurrentRequests int64 `json:"targetConcurrentRequests,omitempty"`
  2664  	// TargetRequestCountPerSecond: Target requests per second.
  2665  	TargetRequestCountPerSecond int64 `json:"targetRequestCountPerSecond,omitempty"`
  2666  	// ForceSendFields is a list of field names (e.g. "TargetConcurrentRequests")
  2667  	// to unconditionally include in API requests. By default, fields with empty or
  2668  	// default values are omitted from API requests. See
  2669  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2670  	// details.
  2671  	ForceSendFields []string `json:"-"`
  2672  	// NullFields is a list of field names (e.g. "TargetConcurrentRequests") to
  2673  	// include in API requests with the JSON null value. By default, fields with
  2674  	// empty values are omitted from API requests. See
  2675  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2676  	NullFields []string `json:"-"`
  2677  }
  2678  
  2679  func (s *RequestUtilization) MarshalJSON() ([]byte, error) {
  2680  	type NoMethod RequestUtilization
  2681  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2682  }
  2683  
  2684  // ResourceRecord: A DNS resource record.
  2685  type ResourceRecord struct {
  2686  	// Name: Relative name of the object affected by this record. Only applicable
  2687  	// for CNAME records. Example: 'www'.
  2688  	Name string `json:"name,omitempty"`
  2689  	// Rrdata: Data for this record. Values vary by record type, as defined in RFC
  2690  	// 1035 (section 5) and RFC 1034 (section 3.6.1).
  2691  	Rrdata string `json:"rrdata,omitempty"`
  2692  	// Type: Resource record type. Example: AAAA.
  2693  	//
  2694  	// Possible values:
  2695  	//   "RECORD_TYPE_UNSPECIFIED" - An unknown resource record.
  2696  	//   "A" - An A resource record. Data is an IPv4 address.
  2697  	//   "AAAA" - An AAAA resource record. Data is an IPv6 address.
  2698  	//   "CNAME" - A CNAME resource record. Data is a domain name to be aliased.
  2699  	Type string `json:"type,omitempty"`
  2700  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  2701  	// include in API requests. By default, fields with empty or default values are
  2702  	// omitted from API requests. See
  2703  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2704  	// details.
  2705  	ForceSendFields []string `json:"-"`
  2706  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  2707  	// with the JSON null value. By default, fields with empty values are omitted
  2708  	// from API requests. See
  2709  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2710  	NullFields []string `json:"-"`
  2711  }
  2712  
  2713  func (s *ResourceRecord) MarshalJSON() ([]byte, error) {
  2714  	type NoMethod ResourceRecord
  2715  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2716  }
  2717  
  2718  // Resources: Machine resources for a version.
  2719  type Resources struct {
  2720  	// Cpu: Number of CPU cores needed.
  2721  	Cpu float64 `json:"cpu,omitempty"`
  2722  	// DiskGb: Disk size (GB) needed.
  2723  	DiskGb float64 `json:"diskGb,omitempty"`
  2724  	// KmsKeyReference: The name of the encryption key that is stored in Google
  2725  	// Cloud KMS. Only should be used by Cloud Composer to encrypt the vm disk
  2726  	KmsKeyReference string `json:"kmsKeyReference,omitempty"`
  2727  	// MemoryGb: Memory (GB) needed.
  2728  	MemoryGb float64 `json:"memoryGb,omitempty"`
  2729  	// Volumes: User specified volumes.
  2730  	Volumes []*Volume `json:"volumes,omitempty"`
  2731  	// ForceSendFields is a list of field names (e.g. "Cpu") to unconditionally
  2732  	// include in API requests. By default, fields with empty or default values are
  2733  	// omitted from API requests. See
  2734  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2735  	// details.
  2736  	ForceSendFields []string `json:"-"`
  2737  	// NullFields is a list of field names (e.g. "Cpu") to include in API requests
  2738  	// with the JSON null value. By default, fields with empty values are omitted
  2739  	// from API requests. See
  2740  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2741  	NullFields []string `json:"-"`
  2742  }
  2743  
  2744  func (s *Resources) MarshalJSON() ([]byte, error) {
  2745  	type NoMethod Resources
  2746  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2747  }
  2748  
  2749  func (s *Resources) UnmarshalJSON(data []byte) error {
  2750  	type NoMethod Resources
  2751  	var s1 struct {
  2752  		Cpu      gensupport.JSONFloat64 `json:"cpu"`
  2753  		DiskGb   gensupport.JSONFloat64 `json:"diskGb"`
  2754  		MemoryGb gensupport.JSONFloat64 `json:"memoryGb"`
  2755  		*NoMethod
  2756  	}
  2757  	s1.NoMethod = (*NoMethod)(s)
  2758  	if err := json.Unmarshal(data, &s1); err != nil {
  2759  		return err
  2760  	}
  2761  	s.Cpu = float64(s1.Cpu)
  2762  	s.DiskGb = float64(s1.DiskGb)
  2763  	s.MemoryGb = float64(s1.MemoryGb)
  2764  	return nil
  2765  }
  2766  
  2767  // Runtime: Runtime versions for App Engine.
  2768  type Runtime struct {
  2769  	// DecommissionedDate: Date when Runtime is decommissioned.
  2770  	DecommissionedDate *Date `json:"decommissionedDate,omitempty"`
  2771  	// DeprecationDate: Date when Runtime is deprecated.
  2772  	DeprecationDate *Date `json:"deprecationDate,omitempty"`
  2773  	// DisplayName: User-friendly display name, e.g. 'Node.js 12', etc.
  2774  	DisplayName string `json:"displayName,omitempty"`
  2775  	// EndOfSupportDate: Date when Runtime is end of support.
  2776  	EndOfSupportDate *Date `json:"endOfSupportDate,omitempty"`
  2777  	// Environment: The environment of the runtime.
  2778  	//
  2779  	// Possible values:
  2780  	//   "ENVIRONMENT_UNSPECIFIED" - Default value.
  2781  	//   "STANDARD" - App Engine Standard.
  2782  	//   "FLEXIBLE" - App Engine Flexible
  2783  	Environment string `json:"environment,omitempty"`
  2784  	// Name: The name of the runtime, e.g., 'go113', 'nodejs12', etc.
  2785  	Name string `json:"name,omitempty"`
  2786  	// Stage: The stage of life this runtime is in, e.g., BETA, GA, etc.
  2787  	//
  2788  	// Possible values:
  2789  	//   "RUNTIME_STAGE_UNSPECIFIED" - Not specified.
  2790  	//   "DEVELOPMENT" - The runtime is in development.
  2791  	//   "ALPHA" - The runtime is in the Alpha stage.
  2792  	//   "BETA" - The runtime is in the Beta stage.
  2793  	//   "GA" - The runtime is generally available.
  2794  	//   "DEPRECATED" - The runtime is deprecated.
  2795  	//   "DECOMMISSIONED" - The runtime is no longer supported.
  2796  	//   "END_OF_SUPPORT" - The runtime is end of support.
  2797  	Stage string `json:"stage,omitempty"`
  2798  	// SupportedOperatingSystems: Supported operating systems for the runtime,
  2799  	// e.g., 'ubuntu22', etc.
  2800  	SupportedOperatingSystems []string `json:"supportedOperatingSystems,omitempty"`
  2801  	// Warnings: Warning messages, e.g., a deprecation warning.
  2802  	Warnings []string `json:"warnings,omitempty"`
  2803  	// ForceSendFields is a list of field names (e.g. "DecommissionedDate") to
  2804  	// unconditionally include in API requests. By default, fields with empty or
  2805  	// default values are omitted from API requests. See
  2806  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2807  	// details.
  2808  	ForceSendFields []string `json:"-"`
  2809  	// NullFields is a list of field names (e.g. "DecommissionedDate") to include
  2810  	// in API requests with the JSON null value. By default, fields with empty
  2811  	// values are omitted from API requests. See
  2812  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2813  	NullFields []string `json:"-"`
  2814  }
  2815  
  2816  func (s *Runtime) MarshalJSON() ([]byte, error) {
  2817  	type NoMethod Runtime
  2818  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2819  }
  2820  
  2821  // ScriptHandler: Executes a script to handle the request that matches the URL
  2822  // pattern.
  2823  type ScriptHandler struct {
  2824  	// ScriptPath: Path to the script from the application root directory.
  2825  	ScriptPath string `json:"scriptPath,omitempty"`
  2826  	// ForceSendFields is a list of field names (e.g. "ScriptPath") to
  2827  	// unconditionally include in API requests. By default, fields with empty or
  2828  	// default values are omitted from API requests. See
  2829  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2830  	// details.
  2831  	ForceSendFields []string `json:"-"`
  2832  	// NullFields is a list of field names (e.g. "ScriptPath") to include in API
  2833  	// requests with the JSON null value. By default, fields with empty values are
  2834  	// omitted from API requests. See
  2835  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2836  	NullFields []string `json:"-"`
  2837  }
  2838  
  2839  func (s *ScriptHandler) MarshalJSON() ([]byte, error) {
  2840  	type NoMethod ScriptHandler
  2841  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2842  }
  2843  
  2844  // Service: A Service resource is a logical component of an application that
  2845  // can share state and communicate in a secure fashion with other services. For
  2846  // example, an application that handles customer requests might include
  2847  // separate services to handle tasks such as backend data analysis or API
  2848  // requests from mobile devices. Each service has a collection of versions that
  2849  // define a specific set of code used to implement the functionality of that
  2850  // service.
  2851  type Service struct {
  2852  	// GeneratedCustomerMetadata: Additional Google Generated Customer Metadata,
  2853  	// this field won't be provided by default and can be requested by setting the
  2854  	// IncludeExtraData field in GetServiceRequest
  2855  	GeneratedCustomerMetadata googleapi.RawMessage `json:"generatedCustomerMetadata,omitempty"`
  2856  	// Id: Relative name of the service within the application. Example:
  2857  	// default.@OutputOnly
  2858  	Id string `json:"id,omitempty"`
  2859  	// Labels: A set of labels to apply to this service. Labels are key/value pairs
  2860  	// that describe the service and all resources that belong to it (e.g.,
  2861  	// versions). The labels can be used to search and group resources, and are
  2862  	// propagated to the usage and billing reports, enabling fine-grain analysis of
  2863  	// costs. An example of using labels is to tag resources belonging to different
  2864  	// environments (e.g., "env=prod", "env=qa"). Label keys and values can be no
  2865  	// longer than 63 characters and can only contain lowercase letters, numeric
  2866  	// characters, underscores, dashes, and international characters. Label keys
  2867  	// must start with a lowercase letter or an international character. Each
  2868  	// service can have at most 32 labels.
  2869  	Labels map[string]string `json:"labels,omitempty"`
  2870  	// Name: Full path to the Service resource in the API. Example:
  2871  	// apps/myapp/services/default.@OutputOnly
  2872  	Name string `json:"name,omitempty"`
  2873  	// NetworkSettings: Ingress settings for this service. Will apply to all
  2874  	// versions.
  2875  	NetworkSettings *NetworkSettings `json:"networkSettings,omitempty"`
  2876  	// Split: Mapping that defines fractional HTTP traffic diversion to different
  2877  	// versions within the service.
  2878  	Split *TrafficSplit `json:"split,omitempty"`
  2879  
  2880  	// ServerResponse contains the HTTP response code and headers from the server.
  2881  	googleapi.ServerResponse `json:"-"`
  2882  	// ForceSendFields is a list of field names (e.g. "GeneratedCustomerMetadata")
  2883  	// to unconditionally include in API requests. By default, fields with empty or
  2884  	// default values are omitted from API requests. See
  2885  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2886  	// details.
  2887  	ForceSendFields []string `json:"-"`
  2888  	// NullFields is a list of field names (e.g. "GeneratedCustomerMetadata") to
  2889  	// include in API requests with the JSON null value. By default, fields with
  2890  	// empty values are omitted from API requests. See
  2891  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2892  	NullFields []string `json:"-"`
  2893  }
  2894  
  2895  func (s *Service) MarshalJSON() ([]byte, error) {
  2896  	type NoMethod Service
  2897  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2898  }
  2899  
  2900  // SslSettings: SSL configuration for a DomainMapping resource.
  2901  type SslSettings struct {
  2902  	// CertificateId: ID of the AuthorizedCertificate resource configuring SSL for
  2903  	// the application. Clearing this field will remove SSL support.By default, a
  2904  	// managed certificate is automatically created for every domain mapping. To
  2905  	// omit SSL support or to configure SSL manually, specify
  2906  	// SslManagementType.MANUAL on a CREATE or UPDATE request. You must be
  2907  	// authorized to administer the AuthorizedCertificate resource to manually map
  2908  	// it to a DomainMapping resource. Example: 12345.
  2909  	CertificateId string `json:"certificateId,omitempty"`
  2910  	// PendingManagedCertificateId: ID of the managed AuthorizedCertificate
  2911  	// resource currently being provisioned, if applicable. Until the new managed
  2912  	// certificate has been successfully provisioned, the previous SSL state will
  2913  	// be preserved. Once the provisioning process completes, the certificate_id
  2914  	// field will reflect the new managed certificate and this field will be left
  2915  	// empty. To remove SSL support while there is still a pending managed
  2916  	// certificate, clear the certificate_id field with an
  2917  	// UpdateDomainMappingRequest.@OutputOnly
  2918  	PendingManagedCertificateId string `json:"pendingManagedCertificateId,omitempty"`
  2919  	// SslManagementType: SSL management type for this domain. If AUTOMATIC, a
  2920  	// managed certificate is automatically provisioned. If MANUAL, certificate_id
  2921  	// must be manually specified in order to configure SSL for this domain.
  2922  	//
  2923  	// Possible values:
  2924  	//   "SSL_MANAGEMENT_TYPE_UNSPECIFIED" - Defaults to AUTOMATIC.
  2925  	//   "AUTOMATIC" - SSL support for this domain is configured automatically. The
  2926  	// mapped SSL certificate will be automatically renewed.
  2927  	//   "MANUAL" - SSL support for this domain is configured manually by the user.
  2928  	// Either the domain has no SSL support or a user-obtained SSL certificate has
  2929  	// been explictly mapped to this domain.
  2930  	SslManagementType string `json:"sslManagementType,omitempty"`
  2931  	// ForceSendFields is a list of field names (e.g. "CertificateId") to
  2932  	// unconditionally include in API requests. By default, fields with empty or
  2933  	// default values are omitted from API requests. See
  2934  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2935  	// details.
  2936  	ForceSendFields []string `json:"-"`
  2937  	// NullFields is a list of field names (e.g. "CertificateId") to include in API
  2938  	// requests with the JSON null value. By default, fields with empty values are
  2939  	// omitted from API requests. See
  2940  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2941  	NullFields []string `json:"-"`
  2942  }
  2943  
  2944  func (s *SslSettings) MarshalJSON() ([]byte, error) {
  2945  	type NoMethod SslSettings
  2946  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2947  }
  2948  
  2949  // StandardSchedulerSettings: Scheduler settings for standard environment.
  2950  type StandardSchedulerSettings struct {
  2951  	// MaxInstances: Maximum number of instances to run for this version. Set to
  2952  	// zero to disable max_instances configuration.
  2953  	MaxInstances int64 `json:"maxInstances,omitempty"`
  2954  	// MinInstances: Minimum number of instances to run for this version. Set to
  2955  	// zero to disable min_instances configuration.
  2956  	MinInstances int64 `json:"minInstances,omitempty"`
  2957  	// TargetCpuUtilization: Target CPU utilization ratio to maintain when scaling.
  2958  	TargetCpuUtilization float64 `json:"targetCpuUtilization,omitempty"`
  2959  	// TargetThroughputUtilization: Target throughput utilization ratio to maintain
  2960  	// when scaling
  2961  	TargetThroughputUtilization float64 `json:"targetThroughputUtilization,omitempty"`
  2962  	// ForceSendFields is a list of field names (e.g. "MaxInstances") to
  2963  	// unconditionally include in API requests. By default, fields with empty or
  2964  	// default values are omitted from API requests. See
  2965  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2966  	// details.
  2967  	ForceSendFields []string `json:"-"`
  2968  	// NullFields is a list of field names (e.g. "MaxInstances") to include in API
  2969  	// requests with the JSON null value. By default, fields with empty values are
  2970  	// omitted from API requests. See
  2971  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2972  	NullFields []string `json:"-"`
  2973  }
  2974  
  2975  func (s *StandardSchedulerSettings) MarshalJSON() ([]byte, error) {
  2976  	type NoMethod StandardSchedulerSettings
  2977  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2978  }
  2979  
  2980  func (s *StandardSchedulerSettings) UnmarshalJSON(data []byte) error {
  2981  	type NoMethod StandardSchedulerSettings
  2982  	var s1 struct {
  2983  		TargetCpuUtilization        gensupport.JSONFloat64 `json:"targetCpuUtilization"`
  2984  		TargetThroughputUtilization gensupport.JSONFloat64 `json:"targetThroughputUtilization"`
  2985  		*NoMethod
  2986  	}
  2987  	s1.NoMethod = (*NoMethod)(s)
  2988  	if err := json.Unmarshal(data, &s1); err != nil {
  2989  		return err
  2990  	}
  2991  	s.TargetCpuUtilization = float64(s1.TargetCpuUtilization)
  2992  	s.TargetThroughputUtilization = float64(s1.TargetThroughputUtilization)
  2993  	return nil
  2994  }
  2995  
  2996  // StaticFilesHandler: Files served directly to the user for a given URL, such
  2997  // as images, CSS stylesheets, or JavaScript source files. Static file handlers
  2998  // describe which files in the application directory are static files, and
  2999  // which URLs serve them.
  3000  type StaticFilesHandler struct {
  3001  	// ApplicationReadable: Whether files should also be uploaded as code data. By
  3002  	// default, files declared in static file handlers are uploaded as static data
  3003  	// and are only served to end users; they cannot be read by the application. If
  3004  	// enabled, uploads are charged against both your code and static data storage
  3005  	// resource quotas.
  3006  	ApplicationReadable bool `json:"applicationReadable,omitempty"`
  3007  	// Expiration: Time a static file served by this handler should be cached by
  3008  	// web proxies and browsers.
  3009  	Expiration string `json:"expiration,omitempty"`
  3010  	// HttpHeaders: HTTP headers to use for all responses from these URLs.
  3011  	HttpHeaders map[string]string `json:"httpHeaders,omitempty"`
  3012  	// MimeType: MIME type used to serve all files served by this handler.Defaults
  3013  	// to file-specific MIME types, which are derived from each file's filename
  3014  	// extension.
  3015  	MimeType string `json:"mimeType,omitempty"`
  3016  	// Path: Path to the static files matched by the URL pattern, from the
  3017  	// application root directory. The path can refer to text matched in groupings
  3018  	// in the URL pattern.
  3019  	Path string `json:"path,omitempty"`
  3020  	// RequireMatchingFile: Whether this handler should match the request if the
  3021  	// file referenced by the handler does not exist.
  3022  	RequireMatchingFile bool `json:"requireMatchingFile,omitempty"`
  3023  	// UploadPathRegex: Regular expression that matches the file paths for all
  3024  	// files that should be referenced by this handler.
  3025  	UploadPathRegex string `json:"uploadPathRegex,omitempty"`
  3026  	// ForceSendFields is a list of field names (e.g. "ApplicationReadable") to
  3027  	// unconditionally include in API requests. By default, fields with empty or
  3028  	// default values are omitted from API requests. See
  3029  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3030  	// details.
  3031  	ForceSendFields []string `json:"-"`
  3032  	// NullFields is a list of field names (e.g. "ApplicationReadable") to include
  3033  	// in API requests with the JSON null value. By default, fields with empty
  3034  	// values are omitted from API requests. See
  3035  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3036  	NullFields []string `json:"-"`
  3037  }
  3038  
  3039  func (s *StaticFilesHandler) MarshalJSON() ([]byte, error) {
  3040  	type NoMethod StaticFilesHandler
  3041  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3042  }
  3043  
  3044  // Status: The Status type defines a logical error model that is suitable for
  3045  // different programming environments, including REST APIs and RPC APIs. It is
  3046  // used by gRPC (https://github.com/grpc). Each Status message contains three
  3047  // pieces of data: error code, error message, and error details.You can find
  3048  // out more about this error model and how to work with it in the API Design
  3049  // Guide (https://cloud.google.com/apis/design/errors).
  3050  type Status struct {
  3051  	// Code: The status code, which should be an enum value of google.rpc.Code.
  3052  	Code int64 `json:"code,omitempty"`
  3053  	// Details: A list of messages that carry the error details. There is a common
  3054  	// set of message types for APIs to use.
  3055  	Details []googleapi.RawMessage `json:"details,omitempty"`
  3056  	// Message: A developer-facing error message, which should be in English. Any
  3057  	// user-facing error message should be localized and sent in the
  3058  	// google.rpc.Status.details field, or localized by the client.
  3059  	Message string `json:"message,omitempty"`
  3060  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  3061  	// include in API requests. By default, fields with empty or default values are
  3062  	// omitted from API requests. See
  3063  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3064  	// details.
  3065  	ForceSendFields []string `json:"-"`
  3066  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  3067  	// with the JSON null value. By default, fields with empty values are omitted
  3068  	// from API requests. See
  3069  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3070  	NullFields []string `json:"-"`
  3071  }
  3072  
  3073  func (s *Status) MarshalJSON() ([]byte, error) {
  3074  	type NoMethod Status
  3075  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3076  }
  3077  
  3078  // TrafficSplit: Traffic routing configuration for versions within a single
  3079  // service. Traffic splits define how traffic directed to the service is
  3080  // assigned to versions.
  3081  type TrafficSplit struct {
  3082  	// Allocations: Mapping from version IDs within the service to fractional
  3083  	// (0.000, 1] allocations of traffic for that version. Each version can be
  3084  	// specified only once, but some versions in the service may not have any
  3085  	// traffic allocation. Services that have traffic allocated cannot be deleted
  3086  	// until either the service is deleted or their traffic allocation is removed.
  3087  	// Allocations must sum to 1. Up to two decimal place precision is supported
  3088  	// for IP-based splits and up to three decimal places is supported for
  3089  	// cookie-based splits.
  3090  	Allocations map[string]float64 `json:"allocations,omitempty"`
  3091  	// ShardBy: Mechanism used to determine which version a request is sent to. The
  3092  	// traffic selection algorithm will be stable for either type until allocations
  3093  	// are changed.
  3094  	//
  3095  	// Possible values:
  3096  	//   "UNSPECIFIED" - Diversion method unspecified.
  3097  	//   "COOKIE" - Diversion based on a specially named cookie, "GOOGAPPUID." The
  3098  	// cookie must be set by the application itself or no diversion will occur.
  3099  	//   "IP" - Diversion based on applying the modulus operation to a fingerprint
  3100  	// of the IP address.
  3101  	//   "RANDOM" - Diversion based on weighted random assignment. An incoming
  3102  	// request is randomly routed to a version in the traffic split, with
  3103  	// probability proportional to the version's traffic share.
  3104  	ShardBy string `json:"shardBy,omitempty"`
  3105  	// ForceSendFields is a list of field names (e.g. "Allocations") to
  3106  	// unconditionally include in API requests. By default, fields with empty or
  3107  	// default values are omitted from API requests. See
  3108  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3109  	// details.
  3110  	ForceSendFields []string `json:"-"`
  3111  	// NullFields is a list of field names (e.g. "Allocations") to include in API
  3112  	// requests with the JSON null value. By default, fields with empty values are
  3113  	// omitted from API requests. See
  3114  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3115  	NullFields []string `json:"-"`
  3116  }
  3117  
  3118  func (s *TrafficSplit) MarshalJSON() ([]byte, error) {
  3119  	type NoMethod TrafficSplit
  3120  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3121  }
  3122  
  3123  // UrlDispatchRule: Rules to match an HTTP request and dispatch that request to
  3124  // a service.
  3125  type UrlDispatchRule struct {
  3126  	// Domain: Domain name to match against. The wildcard "*" is supported if
  3127  	// specified before a period: "*.".Defaults to matching all domains: "*".
  3128  	Domain string `json:"domain,omitempty"`
  3129  	// Path: Pathname within the host. Must start with a "/". A single "*" can be
  3130  	// included at the end of the path.The sum of the lengths of the domain and
  3131  	// path may not exceed 100 characters.
  3132  	Path string `json:"path,omitempty"`
  3133  	// Service: Resource ID of a service in this application that should serve the
  3134  	// matched request. The service must already exist. Example: default.
  3135  	Service string `json:"service,omitempty"`
  3136  	// ForceSendFields is a list of field names (e.g. "Domain") to unconditionally
  3137  	// include in API requests. By default, fields with empty or default values are
  3138  	// omitted from API requests. See
  3139  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3140  	// details.
  3141  	ForceSendFields []string `json:"-"`
  3142  	// NullFields is a list of field names (e.g. "Domain") to include in API
  3143  	// requests with the JSON null value. By default, fields with empty values are
  3144  	// omitted from API requests. See
  3145  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3146  	NullFields []string `json:"-"`
  3147  }
  3148  
  3149  func (s *UrlDispatchRule) MarshalJSON() ([]byte, error) {
  3150  	type NoMethod UrlDispatchRule
  3151  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3152  }
  3153  
  3154  // UrlMap: URL pattern and description of how the URL should be handled. App
  3155  // Engine can handle URLs by executing application code or by serving static
  3156  // files uploaded with the version, such as images, CSS, or JavaScript.
  3157  type UrlMap struct {
  3158  	// ApiEndpoint: Uses API Endpoints to handle requests.
  3159  	ApiEndpoint *ApiEndpointHandler `json:"apiEndpoint,omitempty"`
  3160  	// AuthFailAction: Action to take when users access resources that require
  3161  	// authentication. Defaults to redirect.
  3162  	//
  3163  	// Possible values:
  3164  	//   "AUTH_FAIL_ACTION_UNSPECIFIED" - Not specified. AUTH_FAIL_ACTION_REDIRECT
  3165  	// is assumed.
  3166  	//   "AUTH_FAIL_ACTION_REDIRECT" - Redirects user to "accounts.google.com". The
  3167  	// user is redirected back to the application URL after signing in or creating
  3168  	// an account.
  3169  	//   "AUTH_FAIL_ACTION_UNAUTHORIZED" - Rejects request with a 401 HTTP status
  3170  	// code and an error message.
  3171  	AuthFailAction string `json:"authFailAction,omitempty"`
  3172  	// Login: Level of login required to access this resource. Not supported for
  3173  	// Node.js in the App Engine standard environment.
  3174  	//
  3175  	// Possible values:
  3176  	//   "LOGIN_UNSPECIFIED" - Not specified. LOGIN_OPTIONAL is assumed.
  3177  	//   "LOGIN_OPTIONAL" - Does not require that the user is signed in.
  3178  	//   "LOGIN_ADMIN" - If the user is not signed in, the auth_fail_action is
  3179  	// taken. In addition, if the user is not an administrator for the application,
  3180  	// they are given an error message regardless of auth_fail_action. If the user
  3181  	// is an administrator, the handler proceeds.
  3182  	//   "LOGIN_REQUIRED" - If the user has signed in, the handler proceeds
  3183  	// normally. Otherwise, the auth_fail_action is taken.
  3184  	Login string `json:"login,omitempty"`
  3185  	// RedirectHttpResponseCode: 30x code to use when performing redirects for the
  3186  	// secure field. Defaults to 302.
  3187  	//
  3188  	// Possible values:
  3189  	//   "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED" - Not specified. 302 is assumed.
  3190  	//   "REDIRECT_HTTP_RESPONSE_CODE_301" - 301 Moved Permanently code.
  3191  	//   "REDIRECT_HTTP_RESPONSE_CODE_302" - 302 Moved Temporarily code.
  3192  	//   "REDIRECT_HTTP_RESPONSE_CODE_303" - 303 See Other code.
  3193  	//   "REDIRECT_HTTP_RESPONSE_CODE_307" - 307 Temporary Redirect code.
  3194  	RedirectHttpResponseCode string `json:"redirectHttpResponseCode,omitempty"`
  3195  	// Script: Executes a script to handle the requests that match this URL
  3196  	// pattern. Only the auto value is supported for Node.js in the App Engine
  3197  	// standard environment, for example "script": "auto".
  3198  	Script *ScriptHandler `json:"script,omitempty"`
  3199  	// SecurityLevel: Security (HTTPS) enforcement for this URL.
  3200  	//
  3201  	// Possible values:
  3202  	//   "SECURE_UNSPECIFIED" - Not specified.
  3203  	//   "SECURE_DEFAULT" - Both HTTP and HTTPS requests with URLs that match the
  3204  	// handler succeed without redirects. The application can examine the request
  3205  	// to determine which protocol was used, and respond accordingly.
  3206  	//   "SECURE_NEVER" - Requests for a URL that match this handler that use HTTPS
  3207  	// are automatically redirected to the HTTP equivalent URL.
  3208  	//   "SECURE_OPTIONAL" - Both HTTP and HTTPS requests with URLs that match the
  3209  	// handler succeed without redirects. The application can examine the request
  3210  	// to determine which protocol was used and respond accordingly.
  3211  	//   "SECURE_ALWAYS" - Requests for a URL that match this handler that do not
  3212  	// use HTTPS are automatically redirected to the HTTPS URL with the same path.
  3213  	// Query parameters are reserved for the redirect.
  3214  	SecurityLevel string `json:"securityLevel,omitempty"`
  3215  	// StaticFiles: Returns the contents of a file, such as an image, as the
  3216  	// response.
  3217  	StaticFiles *StaticFilesHandler `json:"staticFiles,omitempty"`
  3218  	// UrlRegex: URL prefix. Uses regular expression syntax, which means regexp
  3219  	// special characters must be escaped, but should not contain groupings. All
  3220  	// URLs that begin with this prefix are handled by this handler, using the
  3221  	// portion of the URL after the prefix as part of the file path.
  3222  	UrlRegex string `json:"urlRegex,omitempty"`
  3223  	// ForceSendFields is a list of field names (e.g. "ApiEndpoint") to
  3224  	// unconditionally include in API requests. By default, fields with empty or
  3225  	// default values are omitted from API requests. See
  3226  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3227  	// details.
  3228  	ForceSendFields []string `json:"-"`
  3229  	// NullFields is a list of field names (e.g. "ApiEndpoint") to include in API
  3230  	// requests with the JSON null value. By default, fields with empty values are
  3231  	// omitted from API requests. See
  3232  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3233  	NullFields []string `json:"-"`
  3234  }
  3235  
  3236  func (s *UrlMap) MarshalJSON() ([]byte, error) {
  3237  	type NoMethod UrlMap
  3238  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3239  }
  3240  
  3241  // Version: A Version resource is a specific set of source code and
  3242  // configuration files that are deployed into a service.
  3243  type Version struct {
  3244  	// ApiConfig: Serving configuration for Google Cloud Endpoints
  3245  	// (https://cloud.google.com/endpoints).Only returned in GET requests if
  3246  	// view=FULL is set.
  3247  	ApiConfig *ApiConfigHandler `json:"apiConfig,omitempty"`
  3248  	// AppEngineApis: Allows App Engine second generation runtimes to access the
  3249  	// legacy bundled services.
  3250  	AppEngineApis bool `json:"appEngineApis,omitempty"`
  3251  	// AutomaticScaling: Automatic scaling is based on request rate, response
  3252  	// latencies, and other application metrics. Instances are dynamically created
  3253  	// and destroyed as needed in order to handle traffic.
  3254  	AutomaticScaling *AutomaticScaling `json:"automaticScaling,omitempty"`
  3255  	// BasicScaling: A service with basic scaling will create an instance when the
  3256  	// application receives a request. The instance will be turned down when the
  3257  	// app becomes idle. Basic scaling is ideal for work that is intermittent or
  3258  	// driven by user activity.
  3259  	BasicScaling *BasicScaling `json:"basicScaling,omitempty"`
  3260  	// BetaSettings: Metadata settings that are supplied to this version to enable
  3261  	// beta runtime features.
  3262  	BetaSettings map[string]string `json:"betaSettings,omitempty"`
  3263  	// BuildEnvVariables: Environment variables available to the build
  3264  	// environment.Only returned in GET requests if view=FULL is set.
  3265  	BuildEnvVariables map[string]string `json:"buildEnvVariables,omitempty"`
  3266  	// CreateTime: Time that this version was created.@OutputOnly
  3267  	CreateTime string `json:"createTime,omitempty"`
  3268  	// CreatedBy: Email address of the user who created this version.@OutputOnly
  3269  	CreatedBy string `json:"createdBy,omitempty"`
  3270  	// DefaultExpiration: Duration that static files should be cached by web
  3271  	// proxies and browsers. Only applicable if the corresponding
  3272  	// StaticFilesHandler
  3273  	// (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StaticFilesHandler)
  3274  	// does not specify its own expiration time.Only returned in GET requests if
  3275  	// view=FULL is set.
  3276  	DefaultExpiration string `json:"defaultExpiration,omitempty"`
  3277  	// Deployment: Code and application artifacts that make up this version.Only
  3278  	// returned in GET requests if view=FULL is set.
  3279  	Deployment *Deployment `json:"deployment,omitempty"`
  3280  	// DiskUsageBytes: Total size in bytes of all the files that are included in
  3281  	// this version and currently hosted on the App Engine disk.@OutputOnly
  3282  	DiskUsageBytes int64 `json:"diskUsageBytes,omitempty,string"`
  3283  	// EndpointsApiService: Cloud Endpoints configuration.If endpoints_api_service
  3284  	// is set, the Cloud Endpoints Extensible Service Proxy will be provided to
  3285  	// serve the API implemented by the app.
  3286  	EndpointsApiService *EndpointsApiService `json:"endpointsApiService,omitempty"`
  3287  	// Entrypoint: The entrypoint for the application.
  3288  	Entrypoint *Entrypoint `json:"entrypoint,omitempty"`
  3289  	// Env: App Engine execution environment for this version.Defaults to standard.
  3290  	Env string `json:"env,omitempty"`
  3291  	// EnvVariables: Environment variables available to the application.Only
  3292  	// returned in GET requests if view=FULL is set.
  3293  	EnvVariables map[string]string `json:"envVariables,omitempty"`
  3294  	// ErrorHandlers: Custom static error pages. Limited to 10KB per page.Only
  3295  	// returned in GET requests if view=FULL is set.
  3296  	ErrorHandlers []*ErrorHandler `json:"errorHandlers,omitempty"`
  3297  	// FlexibleRuntimeSettings: Settings for App Engine flexible runtimes.
  3298  	FlexibleRuntimeSettings *FlexibleRuntimeSettings `json:"flexibleRuntimeSettings,omitempty"`
  3299  	// GeneratedCustomerMetadata: Additional Google Generated Customer Metadata,
  3300  	// this field won't be provided by default and can be requested by setting the
  3301  	// IncludeExtraData field in GetVersionRequest
  3302  	GeneratedCustomerMetadata googleapi.RawMessage `json:"generatedCustomerMetadata,omitempty"`
  3303  	// Handlers: An ordered list of URL-matching patterns that should be applied to
  3304  	// incoming requests. The first matching URL handles the request and other
  3305  	// request handlers are not attempted.Only returned in GET requests if
  3306  	// view=FULL is set.
  3307  	Handlers []*UrlMap `json:"handlers,omitempty"`
  3308  	// HealthCheck: Configures health checking for instances. Unhealthy instances
  3309  	// are stopped and replaced with new instances. Only applicable in the App
  3310  	// Engine flexible environment.
  3311  	HealthCheck *HealthCheck `json:"healthCheck,omitempty"`
  3312  	// Id: Relative name of the version within the service. Example: v1. Version
  3313  	// names can contain only lowercase letters, numbers, or hyphens. Reserved
  3314  	// names: "default", "latest", and any name with the prefix "ah-".
  3315  	Id string `json:"id,omitempty"`
  3316  	// InboundServices: Before an application can receive email or XMPP messages,
  3317  	// the application must be configured to enable the service.
  3318  	//
  3319  	// Possible values:
  3320  	//   "INBOUND_SERVICE_UNSPECIFIED" - Not specified.
  3321  	//   "INBOUND_SERVICE_MAIL" - Allows an application to receive mail.
  3322  	//   "INBOUND_SERVICE_MAIL_BOUNCE" - Allows an application to receive
  3323  	// email-bound notifications.
  3324  	//   "INBOUND_SERVICE_XMPP_ERROR" - Allows an application to receive error
  3325  	// stanzas.
  3326  	//   "INBOUND_SERVICE_XMPP_MESSAGE" - Allows an application to receive instant
  3327  	// messages.
  3328  	//   "INBOUND_SERVICE_XMPP_SUBSCRIBE" - Allows an application to receive user
  3329  	// subscription POSTs.
  3330  	//   "INBOUND_SERVICE_XMPP_PRESENCE" - Allows an application to receive a
  3331  	// user's chat presence.
  3332  	//   "INBOUND_SERVICE_CHANNEL_PRESENCE" - Registers an application for
  3333  	// notifications when a client connects or disconnects from a channel.
  3334  	//   "INBOUND_SERVICE_WARMUP" - Enables warmup requests.
  3335  	InboundServices []string `json:"inboundServices,omitempty"`
  3336  	// InstanceClass: Instance class that is used to run this version. Valid values
  3337  	// are: AutomaticScaling: F1, F2, F4, F4_1G ManualScaling or BasicScaling: B1,
  3338  	// B2, B4, B8, B4_1GDefaults to F1 for AutomaticScaling and B1 for
  3339  	// ManualScaling or BasicScaling.
  3340  	InstanceClass string `json:"instanceClass,omitempty"`
  3341  	// Libraries: Configuration for third-party Python runtime libraries that are
  3342  	// required by the application.Only returned in GET requests if view=FULL is
  3343  	// set.
  3344  	Libraries []*Library `json:"libraries,omitempty"`
  3345  	// LivenessCheck: Configures liveness health checking for instances. Unhealthy
  3346  	// instances are stopped and replaced with new instances
  3347  	LivenessCheck *LivenessCheck `json:"livenessCheck,omitempty"`
  3348  	// ManualScaling: A service with manual scaling runs continuously, allowing you
  3349  	// to perform complex initialization and rely on the state of its memory over
  3350  	// time. Manually scaled versions are sometimes referred to as "backends".
  3351  	ManualScaling *ManualScaling `json:"manualScaling,omitempty"`
  3352  	// Name: Full path to the Version resource in the API. Example:
  3353  	// apps/myapp/services/default/versions/v1.@OutputOnly
  3354  	Name string `json:"name,omitempty"`
  3355  	// Network: Extra network settings. Only applicable in the App Engine flexible
  3356  	// environment.
  3357  	Network *Network `json:"network,omitempty"`
  3358  	// NobuildFilesRegex: Files that match this pattern will not be built into this
  3359  	// version. Only applicable for Go runtimes.Only returned in GET requests if
  3360  	// view=FULL is set.
  3361  	NobuildFilesRegex string `json:"nobuildFilesRegex,omitempty"`
  3362  	// ReadinessCheck: Configures readiness health checking for instances.
  3363  	// Unhealthy instances are not put into the backend traffic rotation.
  3364  	ReadinessCheck *ReadinessCheck `json:"readinessCheck,omitempty"`
  3365  	// Resources: Machine resources for this version. Only applicable in the App
  3366  	// Engine flexible environment.
  3367  	Resources *Resources `json:"resources,omitempty"`
  3368  	// Runtime: Desired runtime. Example: python27.
  3369  	Runtime string `json:"runtime,omitempty"`
  3370  	// RuntimeApiVersion: The version of the API in the given runtime environment.
  3371  	// Please see the app.yaml reference for valid values at
  3372  	// https://cloud.google.com/appengine/docs/standard//config/appref
  3373  	RuntimeApiVersion string `json:"runtimeApiVersion,omitempty"`
  3374  	// RuntimeChannel: The channel of the runtime to use. Only available for some
  3375  	// runtimes. Defaults to the default channel.
  3376  	RuntimeChannel string `json:"runtimeChannel,omitempty"`
  3377  	// RuntimeMainExecutablePath: The path or name of the app's main executable.
  3378  	RuntimeMainExecutablePath string `json:"runtimeMainExecutablePath,omitempty"`
  3379  	// ServiceAccount: The identity that the deployed version will run as. Admin
  3380  	// API will use the App Engine Appspot service account as default if this field
  3381  	// is neither provided in app.yaml file nor through CLI flag.
  3382  	ServiceAccount string `json:"serviceAccount,omitempty"`
  3383  	// ServingStatus: Current serving status of this version. Only the versions
  3384  	// with a SERVING status create instances and can be
  3385  	// billed.SERVING_STATUS_UNSPECIFIED is an invalid value. Defaults to SERVING.
  3386  	//
  3387  	// Possible values:
  3388  	//   "SERVING_STATUS_UNSPECIFIED" - Not specified.
  3389  	//   "SERVING" - Currently serving. Instances are created according to the
  3390  	// scaling settings of the version.
  3391  	//   "STOPPED" - Disabled. No instances will be created and the scaling
  3392  	// settings are ignored until the state of the version changes to SERVING.
  3393  	ServingStatus string `json:"servingStatus,omitempty"`
  3394  	// Threadsafe: Whether multiple requests can be dispatched to this version at
  3395  	// once.
  3396  	Threadsafe bool `json:"threadsafe,omitempty"`
  3397  	// VersionUrl: Serving URL for this version. Example:
  3398  	// "https://myversion-dot-myservice-dot-myapp.appspot.com"@OutputOnly
  3399  	VersionUrl string `json:"versionUrl,omitempty"`
  3400  	// Vm: Whether to deploy this version in a container on a virtual machine.
  3401  	Vm bool `json:"vm,omitempty"`
  3402  	// VpcAccessConnector: Enables VPC connectivity for standard apps.
  3403  	VpcAccessConnector *VpcAccessConnector `json:"vpcAccessConnector,omitempty"`
  3404  	// Zones: The Google Compute Engine zones that are supported by this version in
  3405  	// the App Engine flexible environment. Deprecated.
  3406  	Zones []string `json:"zones,omitempty"`
  3407  
  3408  	// ServerResponse contains the HTTP response code and headers from the server.
  3409  	googleapi.ServerResponse `json:"-"`
  3410  	// ForceSendFields is a list of field names (e.g. "ApiConfig") to
  3411  	// unconditionally include in API requests. By default, fields with empty or
  3412  	// default values are omitted from API requests. See
  3413  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3414  	// details.
  3415  	ForceSendFields []string `json:"-"`
  3416  	// NullFields is a list of field names (e.g. "ApiConfig") to include in API
  3417  	// requests with the JSON null value. By default, fields with empty values are
  3418  	// omitted from API requests. See
  3419  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3420  	NullFields []string `json:"-"`
  3421  }
  3422  
  3423  func (s *Version) MarshalJSON() ([]byte, error) {
  3424  	type NoMethod Version
  3425  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3426  }
  3427  
  3428  // Volume: Volumes mounted within the app container. Only applicable in the App
  3429  // Engine flexible environment.
  3430  type Volume struct {
  3431  	// Name: Unique name for the volume.
  3432  	Name string `json:"name,omitempty"`
  3433  	// SizeGb: Volume size in gigabytes.
  3434  	SizeGb float64 `json:"sizeGb,omitempty"`
  3435  	// VolumeType: Underlying volume type, e.g. 'tmpfs'.
  3436  	VolumeType string `json:"volumeType,omitempty"`
  3437  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  3438  	// include in API requests. By default, fields with empty or default values are
  3439  	// omitted from API requests. See
  3440  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3441  	// details.
  3442  	ForceSendFields []string `json:"-"`
  3443  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  3444  	// with the JSON null value. By default, fields with empty values are omitted
  3445  	// from API requests. See
  3446  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3447  	NullFields []string `json:"-"`
  3448  }
  3449  
  3450  func (s *Volume) MarshalJSON() ([]byte, error) {
  3451  	type NoMethod Volume
  3452  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3453  }
  3454  
  3455  func (s *Volume) UnmarshalJSON(data []byte) error {
  3456  	type NoMethod Volume
  3457  	var s1 struct {
  3458  		SizeGb gensupport.JSONFloat64 `json:"sizeGb"`
  3459  		*NoMethod
  3460  	}
  3461  	s1.NoMethod = (*NoMethod)(s)
  3462  	if err := json.Unmarshal(data, &s1); err != nil {
  3463  		return err
  3464  	}
  3465  	s.SizeGb = float64(s1.SizeGb)
  3466  	return nil
  3467  }
  3468  
  3469  // VpcAccessConnector: VPC access connector specification.
  3470  type VpcAccessConnector struct {
  3471  	// EgressSetting: The egress setting for the connector, controlling what
  3472  	// traffic is diverted through it.
  3473  	//
  3474  	// Possible values:
  3475  	//   "EGRESS_SETTING_UNSPECIFIED"
  3476  	//   "ALL_TRAFFIC" - Force the use of VPC Access for all egress traffic from
  3477  	// the function.
  3478  	//   "PRIVATE_IP_RANGES" - Use the VPC Access Connector for private IP space
  3479  	// from RFC1918.
  3480  	EgressSetting string `json:"egressSetting,omitempty"`
  3481  	// Name: Full Serverless VPC Access Connector name e.g.
  3482  	// projects/my-project/locations/us-central1/connectors/c1.
  3483  	Name string `json:"name,omitempty"`
  3484  	// ForceSendFields is a list of field names (e.g. "EgressSetting") to
  3485  	// unconditionally include in API requests. By default, fields with empty or
  3486  	// default values are omitted from API requests. See
  3487  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3488  	// details.
  3489  	ForceSendFields []string `json:"-"`
  3490  	// NullFields is a list of field names (e.g. "EgressSetting") to include in API
  3491  	// requests with the JSON null value. By default, fields with empty values are
  3492  	// omitted from API requests. See
  3493  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3494  	NullFields []string `json:"-"`
  3495  }
  3496  
  3497  func (s *VpcAccessConnector) MarshalJSON() ([]byte, error) {
  3498  	type NoMethod VpcAccessConnector
  3499  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3500  }
  3501  
  3502  // ZipInfo: The zip file information for a zip deployment.
  3503  type ZipInfo struct {
  3504  	// FilesCount: An estimate of the number of files in a zip for a zip
  3505  	// deployment. If set, must be greater than or equal to the actual number of
  3506  	// files. Used for optimizing performance; if not provided, deployment may be
  3507  	// slow.
  3508  	FilesCount int64 `json:"filesCount,omitempty"`
  3509  	// SourceUrl: URL of the zip file to deploy from. Must be a URL to a resource
  3510  	// in Google Cloud Storage in the form 'http(s)://storage.googleapis.com//'.
  3511  	SourceUrl string `json:"sourceUrl,omitempty"`
  3512  	// ForceSendFields is a list of field names (e.g. "FilesCount") to
  3513  	// unconditionally include in API requests. By default, fields with empty or
  3514  	// default values are omitted from API requests. See
  3515  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3516  	// details.
  3517  	ForceSendFields []string `json:"-"`
  3518  	// NullFields is a list of field names (e.g. "FilesCount") to include in API
  3519  	// requests with the JSON null value. By default, fields with empty values are
  3520  	// omitted from API requests. See
  3521  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3522  	NullFields []string `json:"-"`
  3523  }
  3524  
  3525  func (s *ZipInfo) MarshalJSON() ([]byte, error) {
  3526  	type NoMethod ZipInfo
  3527  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3528  }
  3529  
  3530  type AppsCreateCall struct {
  3531  	s           *APIService
  3532  	application *Application
  3533  	urlParams_  gensupport.URLParams
  3534  	ctx_        context.Context
  3535  	header_     http.Header
  3536  }
  3537  
  3538  // Create: Creates an App Engine application for a Google Cloud Platform
  3539  // project. Required fields: id - The ID of the target Cloud Platform project.
  3540  // location - The region (https://cloud.google.com/appengine/docs/locations)
  3541  // where you want the App Engine application located.For more information about
  3542  // App Engine applications, see Managing Projects, Applications, and Billing
  3543  // (https://cloud.google.com/appengine/docs/standard/python/console/).
  3544  func (r *AppsService) Create(application *Application) *AppsCreateCall {
  3545  	c := &AppsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3546  	c.application = application
  3547  	return c
  3548  }
  3549  
  3550  // Fields allows partial responses to be retrieved. See
  3551  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3552  // details.
  3553  func (c *AppsCreateCall) Fields(s ...googleapi.Field) *AppsCreateCall {
  3554  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3555  	return c
  3556  }
  3557  
  3558  // Context sets the context to be used in this call's Do method.
  3559  func (c *AppsCreateCall) Context(ctx context.Context) *AppsCreateCall {
  3560  	c.ctx_ = ctx
  3561  	return c
  3562  }
  3563  
  3564  // Header returns a http.Header that can be modified by the caller to add
  3565  // headers to the request.
  3566  func (c *AppsCreateCall) Header() http.Header {
  3567  	if c.header_ == nil {
  3568  		c.header_ = make(http.Header)
  3569  	}
  3570  	return c.header_
  3571  }
  3572  
  3573  func (c *AppsCreateCall) doRequest(alt string) (*http.Response, error) {
  3574  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3575  	var body io.Reader = nil
  3576  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.application)
  3577  	if err != nil {
  3578  		return nil, err
  3579  	}
  3580  	c.urlParams_.Set("alt", alt)
  3581  	c.urlParams_.Set("prettyPrint", "false")
  3582  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps")
  3583  	urls += "?" + c.urlParams_.Encode()
  3584  	req, err := http.NewRequest("POST", urls, body)
  3585  	if err != nil {
  3586  		return nil, err
  3587  	}
  3588  	req.Header = reqHeaders
  3589  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3590  }
  3591  
  3592  // Do executes the "appengine.apps.create" call.
  3593  // Any non-2xx status code is an error. Response headers are in either
  3594  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3595  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3596  // whether the returned error was because http.StatusNotModified was returned.
  3597  func (c *AppsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3598  	gensupport.SetOptions(c.urlParams_, opts...)
  3599  	res, err := c.doRequest("json")
  3600  	if res != nil && res.StatusCode == http.StatusNotModified {
  3601  		if res.Body != nil {
  3602  			res.Body.Close()
  3603  		}
  3604  		return nil, gensupport.WrapError(&googleapi.Error{
  3605  			Code:   res.StatusCode,
  3606  			Header: res.Header,
  3607  		})
  3608  	}
  3609  	if err != nil {
  3610  		return nil, err
  3611  	}
  3612  	defer googleapi.CloseBody(res)
  3613  	if err := googleapi.CheckResponse(res); err != nil {
  3614  		return nil, gensupport.WrapError(err)
  3615  	}
  3616  	ret := &Operation{
  3617  		ServerResponse: googleapi.ServerResponse{
  3618  			Header:         res.Header,
  3619  			HTTPStatusCode: res.StatusCode,
  3620  		},
  3621  	}
  3622  	target := &ret
  3623  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3624  		return nil, err
  3625  	}
  3626  	return ret, nil
  3627  }
  3628  
  3629  type AppsGetCall struct {
  3630  	s            *APIService
  3631  	appsId       string
  3632  	urlParams_   gensupport.URLParams
  3633  	ifNoneMatch_ string
  3634  	ctx_         context.Context
  3635  	header_      http.Header
  3636  }
  3637  
  3638  // Get: Gets information about an application.
  3639  //
  3640  //   - appsId: Part of `name`. Name of the Application resource to get. Example:
  3641  //     apps/myapp.
  3642  func (r *AppsService) Get(appsId string) *AppsGetCall {
  3643  	c := &AppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3644  	c.appsId = appsId
  3645  	return c
  3646  }
  3647  
  3648  // IncludeExtraData sets the optional parameter "includeExtraData": Options to
  3649  // include extra data
  3650  //
  3651  // Possible values:
  3652  //
  3653  //	"INCLUDE_EXTRA_DATA_UNSPECIFIED" - Unspecified: No extra data will be
  3654  //
  3655  // returned
  3656  //
  3657  //	"INCLUDE_EXTRA_DATA_NONE" - Do not return any extra data
  3658  //	"INCLUDE_GOOGLE_GENERATED_METADATA" - Return GGCM associated with the
  3659  //
  3660  // resources
  3661  func (c *AppsGetCall) IncludeExtraData(includeExtraData string) *AppsGetCall {
  3662  	c.urlParams_.Set("includeExtraData", includeExtraData)
  3663  	return c
  3664  }
  3665  
  3666  // Fields allows partial responses to be retrieved. See
  3667  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3668  // details.
  3669  func (c *AppsGetCall) Fields(s ...googleapi.Field) *AppsGetCall {
  3670  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3671  	return c
  3672  }
  3673  
  3674  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3675  // object's ETag matches the given value. This is useful for getting updates
  3676  // only after the object has changed since the last request.
  3677  func (c *AppsGetCall) IfNoneMatch(entityTag string) *AppsGetCall {
  3678  	c.ifNoneMatch_ = entityTag
  3679  	return c
  3680  }
  3681  
  3682  // Context sets the context to be used in this call's Do method.
  3683  func (c *AppsGetCall) Context(ctx context.Context) *AppsGetCall {
  3684  	c.ctx_ = ctx
  3685  	return c
  3686  }
  3687  
  3688  // Header returns a http.Header that can be modified by the caller to add
  3689  // headers to the request.
  3690  func (c *AppsGetCall) Header() http.Header {
  3691  	if c.header_ == nil {
  3692  		c.header_ = make(http.Header)
  3693  	}
  3694  	return c.header_
  3695  }
  3696  
  3697  func (c *AppsGetCall) doRequest(alt string) (*http.Response, error) {
  3698  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3699  	if c.ifNoneMatch_ != "" {
  3700  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3701  	}
  3702  	var body io.Reader = nil
  3703  	c.urlParams_.Set("alt", alt)
  3704  	c.urlParams_.Set("prettyPrint", "false")
  3705  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}")
  3706  	urls += "?" + c.urlParams_.Encode()
  3707  	req, err := http.NewRequest("GET", urls, body)
  3708  	if err != nil {
  3709  		return nil, err
  3710  	}
  3711  	req.Header = reqHeaders
  3712  	googleapi.Expand(req.URL, map[string]string{
  3713  		"appsId": c.appsId,
  3714  	})
  3715  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3716  }
  3717  
  3718  // Do executes the "appengine.apps.get" call.
  3719  // Any non-2xx status code is an error. Response headers are in either
  3720  // *Application.ServerResponse.Header or (if a response was returned at all) in
  3721  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3722  // whether the returned error was because http.StatusNotModified was returned.
  3723  func (c *AppsGetCall) Do(opts ...googleapi.CallOption) (*Application, error) {
  3724  	gensupport.SetOptions(c.urlParams_, opts...)
  3725  	res, err := c.doRequest("json")
  3726  	if res != nil && res.StatusCode == http.StatusNotModified {
  3727  		if res.Body != nil {
  3728  			res.Body.Close()
  3729  		}
  3730  		return nil, gensupport.WrapError(&googleapi.Error{
  3731  			Code:   res.StatusCode,
  3732  			Header: res.Header,
  3733  		})
  3734  	}
  3735  	if err != nil {
  3736  		return nil, err
  3737  	}
  3738  	defer googleapi.CloseBody(res)
  3739  	if err := googleapi.CheckResponse(res); err != nil {
  3740  		return nil, gensupport.WrapError(err)
  3741  	}
  3742  	ret := &Application{
  3743  		ServerResponse: googleapi.ServerResponse{
  3744  			Header:         res.Header,
  3745  			HTTPStatusCode: res.StatusCode,
  3746  		},
  3747  	}
  3748  	target := &ret
  3749  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3750  		return nil, err
  3751  	}
  3752  	return ret, nil
  3753  }
  3754  
  3755  type AppsListRuntimesCall struct {
  3756  	s            *APIService
  3757  	appsId       string
  3758  	urlParams_   gensupport.URLParams
  3759  	ifNoneMatch_ string
  3760  	ctx_         context.Context
  3761  	header_      http.Header
  3762  }
  3763  
  3764  // ListRuntimes: Lists all the available runtimes for the application.
  3765  //
  3766  //   - appsId: Part of `parent`.  Name of the parent Application resource.
  3767  //     Example: apps/myapp.
  3768  func (r *AppsService) ListRuntimes(appsId string) *AppsListRuntimesCall {
  3769  	c := &AppsListRuntimesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3770  	c.appsId = appsId
  3771  	return c
  3772  }
  3773  
  3774  // Environment sets the optional parameter "environment": The environment of
  3775  // the Application.
  3776  //
  3777  // Possible values:
  3778  //
  3779  //	"ENVIRONMENT_UNSPECIFIED" - Default value.
  3780  //	"STANDARD" - App Engine Standard.
  3781  //	"FLEXIBLE" - App Engine Flexible
  3782  func (c *AppsListRuntimesCall) Environment(environment string) *AppsListRuntimesCall {
  3783  	c.urlParams_.Set("environment", environment)
  3784  	return c
  3785  }
  3786  
  3787  // Fields allows partial responses to be retrieved. See
  3788  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3789  // details.
  3790  func (c *AppsListRuntimesCall) Fields(s ...googleapi.Field) *AppsListRuntimesCall {
  3791  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3792  	return c
  3793  }
  3794  
  3795  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3796  // object's ETag matches the given value. This is useful for getting updates
  3797  // only after the object has changed since the last request.
  3798  func (c *AppsListRuntimesCall) IfNoneMatch(entityTag string) *AppsListRuntimesCall {
  3799  	c.ifNoneMatch_ = entityTag
  3800  	return c
  3801  }
  3802  
  3803  // Context sets the context to be used in this call's Do method.
  3804  func (c *AppsListRuntimesCall) Context(ctx context.Context) *AppsListRuntimesCall {
  3805  	c.ctx_ = ctx
  3806  	return c
  3807  }
  3808  
  3809  // Header returns a http.Header that can be modified by the caller to add
  3810  // headers to the request.
  3811  func (c *AppsListRuntimesCall) Header() http.Header {
  3812  	if c.header_ == nil {
  3813  		c.header_ = make(http.Header)
  3814  	}
  3815  	return c.header_
  3816  }
  3817  
  3818  func (c *AppsListRuntimesCall) doRequest(alt string) (*http.Response, error) {
  3819  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3820  	if c.ifNoneMatch_ != "" {
  3821  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3822  	}
  3823  	var body io.Reader = nil
  3824  	c.urlParams_.Set("alt", alt)
  3825  	c.urlParams_.Set("prettyPrint", "false")
  3826  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}:listRuntimes")
  3827  	urls += "?" + c.urlParams_.Encode()
  3828  	req, err := http.NewRequest("GET", urls, body)
  3829  	if err != nil {
  3830  		return nil, err
  3831  	}
  3832  	req.Header = reqHeaders
  3833  	googleapi.Expand(req.URL, map[string]string{
  3834  		"appsId": c.appsId,
  3835  	})
  3836  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3837  }
  3838  
  3839  // Do executes the "appengine.apps.listRuntimes" call.
  3840  // Any non-2xx status code is an error. Response headers are in either
  3841  // *ListRuntimesResponse.ServerResponse.Header or (if a response was returned
  3842  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  3843  // check whether the returned error was because http.StatusNotModified was
  3844  // returned.
  3845  func (c *AppsListRuntimesCall) Do(opts ...googleapi.CallOption) (*ListRuntimesResponse, error) {
  3846  	gensupport.SetOptions(c.urlParams_, opts...)
  3847  	res, err := c.doRequest("json")
  3848  	if res != nil && res.StatusCode == http.StatusNotModified {
  3849  		if res.Body != nil {
  3850  			res.Body.Close()
  3851  		}
  3852  		return nil, gensupport.WrapError(&googleapi.Error{
  3853  			Code:   res.StatusCode,
  3854  			Header: res.Header,
  3855  		})
  3856  	}
  3857  	if err != nil {
  3858  		return nil, err
  3859  	}
  3860  	defer googleapi.CloseBody(res)
  3861  	if err := googleapi.CheckResponse(res); err != nil {
  3862  		return nil, gensupport.WrapError(err)
  3863  	}
  3864  	ret := &ListRuntimesResponse{
  3865  		ServerResponse: googleapi.ServerResponse{
  3866  			Header:         res.Header,
  3867  			HTTPStatusCode: res.StatusCode,
  3868  		},
  3869  	}
  3870  	target := &ret
  3871  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3872  		return nil, err
  3873  	}
  3874  	return ret, nil
  3875  }
  3876  
  3877  type AppsPatchCall struct {
  3878  	s           *APIService
  3879  	appsId      string
  3880  	application *Application
  3881  	urlParams_  gensupport.URLParams
  3882  	ctx_        context.Context
  3883  	header_     http.Header
  3884  }
  3885  
  3886  // Patch: Updates the specified Application resource. You can update the
  3887  // following fields: auth_domain - Google authentication domain for controlling
  3888  // user access to the application. default_cookie_expiration - Cookie
  3889  // expiration policy for the application. iap - Identity-Aware Proxy properties
  3890  // for the application.
  3891  //
  3892  //   - appsId: Part of `name`. Name of the Application resource to update.
  3893  //     Example: apps/myapp.
  3894  func (r *AppsService) Patch(appsId string, application *Application) *AppsPatchCall {
  3895  	c := &AppsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3896  	c.appsId = appsId
  3897  	c.application = application
  3898  	return c
  3899  }
  3900  
  3901  // UpdateMask sets the optional parameter "updateMask": Required. Standard
  3902  // field mask for the set of fields to be updated.
  3903  func (c *AppsPatchCall) UpdateMask(updateMask string) *AppsPatchCall {
  3904  	c.urlParams_.Set("updateMask", updateMask)
  3905  	return c
  3906  }
  3907  
  3908  // Fields allows partial responses to be retrieved. See
  3909  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3910  // details.
  3911  func (c *AppsPatchCall) Fields(s ...googleapi.Field) *AppsPatchCall {
  3912  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3913  	return c
  3914  }
  3915  
  3916  // Context sets the context to be used in this call's Do method.
  3917  func (c *AppsPatchCall) Context(ctx context.Context) *AppsPatchCall {
  3918  	c.ctx_ = ctx
  3919  	return c
  3920  }
  3921  
  3922  // Header returns a http.Header that can be modified by the caller to add
  3923  // headers to the request.
  3924  func (c *AppsPatchCall) Header() http.Header {
  3925  	if c.header_ == nil {
  3926  		c.header_ = make(http.Header)
  3927  	}
  3928  	return c.header_
  3929  }
  3930  
  3931  func (c *AppsPatchCall) doRequest(alt string) (*http.Response, error) {
  3932  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3933  	var body io.Reader = nil
  3934  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.application)
  3935  	if err != nil {
  3936  		return nil, err
  3937  	}
  3938  	c.urlParams_.Set("alt", alt)
  3939  	c.urlParams_.Set("prettyPrint", "false")
  3940  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}")
  3941  	urls += "?" + c.urlParams_.Encode()
  3942  	req, err := http.NewRequest("PATCH", urls, body)
  3943  	if err != nil {
  3944  		return nil, err
  3945  	}
  3946  	req.Header = reqHeaders
  3947  	googleapi.Expand(req.URL, map[string]string{
  3948  		"appsId": c.appsId,
  3949  	})
  3950  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3951  }
  3952  
  3953  // Do executes the "appengine.apps.patch" call.
  3954  // Any non-2xx status code is an error. Response headers are in either
  3955  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3956  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3957  // whether the returned error was because http.StatusNotModified was returned.
  3958  func (c *AppsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3959  	gensupport.SetOptions(c.urlParams_, opts...)
  3960  	res, err := c.doRequest("json")
  3961  	if res != nil && res.StatusCode == http.StatusNotModified {
  3962  		if res.Body != nil {
  3963  			res.Body.Close()
  3964  		}
  3965  		return nil, gensupport.WrapError(&googleapi.Error{
  3966  			Code:   res.StatusCode,
  3967  			Header: res.Header,
  3968  		})
  3969  	}
  3970  	if err != nil {
  3971  		return nil, err
  3972  	}
  3973  	defer googleapi.CloseBody(res)
  3974  	if err := googleapi.CheckResponse(res); err != nil {
  3975  		return nil, gensupport.WrapError(err)
  3976  	}
  3977  	ret := &Operation{
  3978  		ServerResponse: googleapi.ServerResponse{
  3979  			Header:         res.Header,
  3980  			HTTPStatusCode: res.StatusCode,
  3981  		},
  3982  	}
  3983  	target := &ret
  3984  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3985  		return nil, err
  3986  	}
  3987  	return ret, nil
  3988  }
  3989  
  3990  type AppsRepairCall struct {
  3991  	s                        *APIService
  3992  	appsId                   string
  3993  	repairapplicationrequest *RepairApplicationRequest
  3994  	urlParams_               gensupport.URLParams
  3995  	ctx_                     context.Context
  3996  	header_                  http.Header
  3997  }
  3998  
  3999  // Repair: Recreates the required App Engine features for the specified App
  4000  // Engine application, for example a Cloud Storage bucket or App Engine service
  4001  // account. Use this method if you receive an error message about a missing
  4002  // feature, for example, Error retrieving the App Engine service account. If
  4003  // you have deleted your App Engine service account, this will not be able to
  4004  // recreate it. Instead, you should attempt to use the IAM undelete API if
  4005  // possible at
  4006  // https://cloud.google.com/iam/reference/rest/v1/projects.serviceAccounts/undelete?apix_params=%7B"name"%3A"projects%2F-%2FserviceAccounts%2Funique_id"%2C"resource"%3A%7B%7D%7D
  4007  // . If the deletion was recent, the numeric ID can be found in the Cloud
  4008  // Console Activity Log.
  4009  //
  4010  //   - appsId: Part of `name`. Name of the application to repair. Example:
  4011  //     apps/myapp.
  4012  func (r *AppsService) Repair(appsId string, repairapplicationrequest *RepairApplicationRequest) *AppsRepairCall {
  4013  	c := &AppsRepairCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4014  	c.appsId = appsId
  4015  	c.repairapplicationrequest = repairapplicationrequest
  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 for more
  4021  // details.
  4022  func (c *AppsRepairCall) Fields(s ...googleapi.Field) *AppsRepairCall {
  4023  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4024  	return c
  4025  }
  4026  
  4027  // Context sets the context to be used in this call's Do method.
  4028  func (c *AppsRepairCall) Context(ctx context.Context) *AppsRepairCall {
  4029  	c.ctx_ = ctx
  4030  	return c
  4031  }
  4032  
  4033  // Header returns a http.Header that can be modified by the caller to add
  4034  // headers to the request.
  4035  func (c *AppsRepairCall) Header() http.Header {
  4036  	if c.header_ == nil {
  4037  		c.header_ = make(http.Header)
  4038  	}
  4039  	return c.header_
  4040  }
  4041  
  4042  func (c *AppsRepairCall) doRequest(alt string) (*http.Response, error) {
  4043  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4044  	var body io.Reader = nil
  4045  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repairapplicationrequest)
  4046  	if err != nil {
  4047  		return nil, err
  4048  	}
  4049  	c.urlParams_.Set("alt", alt)
  4050  	c.urlParams_.Set("prettyPrint", "false")
  4051  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}:repair")
  4052  	urls += "?" + c.urlParams_.Encode()
  4053  	req, err := http.NewRequest("POST", urls, body)
  4054  	if err != nil {
  4055  		return nil, err
  4056  	}
  4057  	req.Header = reqHeaders
  4058  	googleapi.Expand(req.URL, map[string]string{
  4059  		"appsId": c.appsId,
  4060  	})
  4061  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4062  }
  4063  
  4064  // Do executes the "appengine.apps.repair" call.
  4065  // Any non-2xx status code is an error. Response headers are in either
  4066  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4067  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4068  // whether the returned error was because http.StatusNotModified was returned.
  4069  func (c *AppsRepairCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4070  	gensupport.SetOptions(c.urlParams_, opts...)
  4071  	res, err := c.doRequest("json")
  4072  	if res != nil && res.StatusCode == http.StatusNotModified {
  4073  		if res.Body != nil {
  4074  			res.Body.Close()
  4075  		}
  4076  		return nil, gensupport.WrapError(&googleapi.Error{
  4077  			Code:   res.StatusCode,
  4078  			Header: res.Header,
  4079  		})
  4080  	}
  4081  	if err != nil {
  4082  		return nil, err
  4083  	}
  4084  	defer googleapi.CloseBody(res)
  4085  	if err := googleapi.CheckResponse(res); err != nil {
  4086  		return nil, gensupport.WrapError(err)
  4087  	}
  4088  	ret := &Operation{
  4089  		ServerResponse: googleapi.ServerResponse{
  4090  			Header:         res.Header,
  4091  			HTTPStatusCode: res.StatusCode,
  4092  		},
  4093  	}
  4094  	target := &ret
  4095  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4096  		return nil, err
  4097  	}
  4098  	return ret, nil
  4099  }
  4100  
  4101  type AppsAuthorizedCertificatesCreateCall struct {
  4102  	s                     *APIService
  4103  	appsId                string
  4104  	authorizedcertificate *AuthorizedCertificate
  4105  	urlParams_            gensupport.URLParams
  4106  	ctx_                  context.Context
  4107  	header_               http.Header
  4108  }
  4109  
  4110  // Create: Uploads the specified SSL certificate.
  4111  //
  4112  //   - appsId: Part of `parent`. Name of the parent Application resource.
  4113  //     Example: apps/myapp.
  4114  func (r *AppsAuthorizedCertificatesService) Create(appsId string, authorizedcertificate *AuthorizedCertificate) *AppsAuthorizedCertificatesCreateCall {
  4115  	c := &AppsAuthorizedCertificatesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4116  	c.appsId = appsId
  4117  	c.authorizedcertificate = authorizedcertificate
  4118  	return c
  4119  }
  4120  
  4121  // Fields allows partial responses to be retrieved. See
  4122  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4123  // details.
  4124  func (c *AppsAuthorizedCertificatesCreateCall) Fields(s ...googleapi.Field) *AppsAuthorizedCertificatesCreateCall {
  4125  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4126  	return c
  4127  }
  4128  
  4129  // Context sets the context to be used in this call's Do method.
  4130  func (c *AppsAuthorizedCertificatesCreateCall) Context(ctx context.Context) *AppsAuthorizedCertificatesCreateCall {
  4131  	c.ctx_ = ctx
  4132  	return c
  4133  }
  4134  
  4135  // Header returns a http.Header that can be modified by the caller to add
  4136  // headers to the request.
  4137  func (c *AppsAuthorizedCertificatesCreateCall) Header() http.Header {
  4138  	if c.header_ == nil {
  4139  		c.header_ = make(http.Header)
  4140  	}
  4141  	return c.header_
  4142  }
  4143  
  4144  func (c *AppsAuthorizedCertificatesCreateCall) doRequest(alt string) (*http.Response, error) {
  4145  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4146  	var body io.Reader = nil
  4147  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.authorizedcertificate)
  4148  	if err != nil {
  4149  		return nil, err
  4150  	}
  4151  	c.urlParams_.Set("alt", alt)
  4152  	c.urlParams_.Set("prettyPrint", "false")
  4153  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/authorizedCertificates")
  4154  	urls += "?" + c.urlParams_.Encode()
  4155  	req, err := http.NewRequest("POST", urls, body)
  4156  	if err != nil {
  4157  		return nil, err
  4158  	}
  4159  	req.Header = reqHeaders
  4160  	googleapi.Expand(req.URL, map[string]string{
  4161  		"appsId": c.appsId,
  4162  	})
  4163  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4164  }
  4165  
  4166  // Do executes the "appengine.apps.authorizedCertificates.create" call.
  4167  // Any non-2xx status code is an error. Response headers are in either
  4168  // *AuthorizedCertificate.ServerResponse.Header or (if a response was returned
  4169  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4170  // check whether the returned error was because http.StatusNotModified was
  4171  // returned.
  4172  func (c *AppsAuthorizedCertificatesCreateCall) Do(opts ...googleapi.CallOption) (*AuthorizedCertificate, error) {
  4173  	gensupport.SetOptions(c.urlParams_, opts...)
  4174  	res, err := c.doRequest("json")
  4175  	if res != nil && res.StatusCode == http.StatusNotModified {
  4176  		if res.Body != nil {
  4177  			res.Body.Close()
  4178  		}
  4179  		return nil, gensupport.WrapError(&googleapi.Error{
  4180  			Code:   res.StatusCode,
  4181  			Header: res.Header,
  4182  		})
  4183  	}
  4184  	if err != nil {
  4185  		return nil, err
  4186  	}
  4187  	defer googleapi.CloseBody(res)
  4188  	if err := googleapi.CheckResponse(res); err != nil {
  4189  		return nil, gensupport.WrapError(err)
  4190  	}
  4191  	ret := &AuthorizedCertificate{
  4192  		ServerResponse: googleapi.ServerResponse{
  4193  			Header:         res.Header,
  4194  			HTTPStatusCode: res.StatusCode,
  4195  		},
  4196  	}
  4197  	target := &ret
  4198  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4199  		return nil, err
  4200  	}
  4201  	return ret, nil
  4202  }
  4203  
  4204  type AppsAuthorizedCertificatesDeleteCall struct {
  4205  	s                        *APIService
  4206  	appsId                   string
  4207  	authorizedCertificatesId string
  4208  	urlParams_               gensupport.URLParams
  4209  	ctx_                     context.Context
  4210  	header_                  http.Header
  4211  }
  4212  
  4213  // Delete: Deletes the specified SSL certificate.
  4214  //
  4215  //   - appsId: Part of `name`. Name of the resource to delete. Example:
  4216  //     apps/myapp/authorizedCertificates/12345.
  4217  //   - authorizedCertificatesId: Part of `name`. See documentation of `appsId`.
  4218  func (r *AppsAuthorizedCertificatesService) Delete(appsId string, authorizedCertificatesId string) *AppsAuthorizedCertificatesDeleteCall {
  4219  	c := &AppsAuthorizedCertificatesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4220  	c.appsId = appsId
  4221  	c.authorizedCertificatesId = authorizedCertificatesId
  4222  	return c
  4223  }
  4224  
  4225  // Fields allows partial responses to be retrieved. See
  4226  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4227  // details.
  4228  func (c *AppsAuthorizedCertificatesDeleteCall) Fields(s ...googleapi.Field) *AppsAuthorizedCertificatesDeleteCall {
  4229  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4230  	return c
  4231  }
  4232  
  4233  // Context sets the context to be used in this call's Do method.
  4234  func (c *AppsAuthorizedCertificatesDeleteCall) Context(ctx context.Context) *AppsAuthorizedCertificatesDeleteCall {
  4235  	c.ctx_ = ctx
  4236  	return c
  4237  }
  4238  
  4239  // Header returns a http.Header that can be modified by the caller to add
  4240  // headers to the request.
  4241  func (c *AppsAuthorizedCertificatesDeleteCall) Header() http.Header {
  4242  	if c.header_ == nil {
  4243  		c.header_ = make(http.Header)
  4244  	}
  4245  	return c.header_
  4246  }
  4247  
  4248  func (c *AppsAuthorizedCertificatesDeleteCall) doRequest(alt string) (*http.Response, error) {
  4249  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4250  	var body io.Reader = nil
  4251  	c.urlParams_.Set("alt", alt)
  4252  	c.urlParams_.Set("prettyPrint", "false")
  4253  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}")
  4254  	urls += "?" + c.urlParams_.Encode()
  4255  	req, err := http.NewRequest("DELETE", urls, body)
  4256  	if err != nil {
  4257  		return nil, err
  4258  	}
  4259  	req.Header = reqHeaders
  4260  	googleapi.Expand(req.URL, map[string]string{
  4261  		"appsId":                   c.appsId,
  4262  		"authorizedCertificatesId": c.authorizedCertificatesId,
  4263  	})
  4264  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4265  }
  4266  
  4267  // Do executes the "appengine.apps.authorizedCertificates.delete" call.
  4268  // Any non-2xx status code is an error. Response headers are in either
  4269  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  4270  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4271  // whether the returned error was because http.StatusNotModified was returned.
  4272  func (c *AppsAuthorizedCertificatesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  4273  	gensupport.SetOptions(c.urlParams_, opts...)
  4274  	res, err := c.doRequest("json")
  4275  	if res != nil && res.StatusCode == http.StatusNotModified {
  4276  		if res.Body != nil {
  4277  			res.Body.Close()
  4278  		}
  4279  		return nil, gensupport.WrapError(&googleapi.Error{
  4280  			Code:   res.StatusCode,
  4281  			Header: res.Header,
  4282  		})
  4283  	}
  4284  	if err != nil {
  4285  		return nil, err
  4286  	}
  4287  	defer googleapi.CloseBody(res)
  4288  	if err := googleapi.CheckResponse(res); err != nil {
  4289  		return nil, gensupport.WrapError(err)
  4290  	}
  4291  	ret := &Empty{
  4292  		ServerResponse: googleapi.ServerResponse{
  4293  			Header:         res.Header,
  4294  			HTTPStatusCode: res.StatusCode,
  4295  		},
  4296  	}
  4297  	target := &ret
  4298  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4299  		return nil, err
  4300  	}
  4301  	return ret, nil
  4302  }
  4303  
  4304  type AppsAuthorizedCertificatesGetCall struct {
  4305  	s                        *APIService
  4306  	appsId                   string
  4307  	authorizedCertificatesId string
  4308  	urlParams_               gensupport.URLParams
  4309  	ifNoneMatch_             string
  4310  	ctx_                     context.Context
  4311  	header_                  http.Header
  4312  }
  4313  
  4314  // Get: Gets the specified SSL certificate.
  4315  //
  4316  //   - appsId: Part of `name`. Name of the resource requested. Example:
  4317  //     apps/myapp/authorizedCertificates/12345.
  4318  //   - authorizedCertificatesId: Part of `name`. See documentation of `appsId`.
  4319  func (r *AppsAuthorizedCertificatesService) Get(appsId string, authorizedCertificatesId string) *AppsAuthorizedCertificatesGetCall {
  4320  	c := &AppsAuthorizedCertificatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4321  	c.appsId = appsId
  4322  	c.authorizedCertificatesId = authorizedCertificatesId
  4323  	return c
  4324  }
  4325  
  4326  // View sets the optional parameter "view": Controls the set of fields returned
  4327  // in the GET response.
  4328  //
  4329  // Possible values:
  4330  //
  4331  //	"BASIC_CERTIFICATE" - Basic certificate information, including applicable
  4332  //
  4333  // domains and expiration date.
  4334  //
  4335  //	"FULL_CERTIFICATE" - The information from BASIC_CERTIFICATE, plus detailed
  4336  //
  4337  // information on the domain mappings that have this certificate mapped.
  4338  func (c *AppsAuthorizedCertificatesGetCall) View(view string) *AppsAuthorizedCertificatesGetCall {
  4339  	c.urlParams_.Set("view", view)
  4340  	return c
  4341  }
  4342  
  4343  // Fields allows partial responses to be retrieved. See
  4344  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4345  // details.
  4346  func (c *AppsAuthorizedCertificatesGetCall) Fields(s ...googleapi.Field) *AppsAuthorizedCertificatesGetCall {
  4347  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4348  	return c
  4349  }
  4350  
  4351  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4352  // object's ETag matches the given value. This is useful for getting updates
  4353  // only after the object has changed since the last request.
  4354  func (c *AppsAuthorizedCertificatesGetCall) IfNoneMatch(entityTag string) *AppsAuthorizedCertificatesGetCall {
  4355  	c.ifNoneMatch_ = entityTag
  4356  	return c
  4357  }
  4358  
  4359  // Context sets the context to be used in this call's Do method.
  4360  func (c *AppsAuthorizedCertificatesGetCall) Context(ctx context.Context) *AppsAuthorizedCertificatesGetCall {
  4361  	c.ctx_ = ctx
  4362  	return c
  4363  }
  4364  
  4365  // Header returns a http.Header that can be modified by the caller to add
  4366  // headers to the request.
  4367  func (c *AppsAuthorizedCertificatesGetCall) Header() http.Header {
  4368  	if c.header_ == nil {
  4369  		c.header_ = make(http.Header)
  4370  	}
  4371  	return c.header_
  4372  }
  4373  
  4374  func (c *AppsAuthorizedCertificatesGetCall) doRequest(alt string) (*http.Response, error) {
  4375  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4376  	if c.ifNoneMatch_ != "" {
  4377  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4378  	}
  4379  	var body io.Reader = nil
  4380  	c.urlParams_.Set("alt", alt)
  4381  	c.urlParams_.Set("prettyPrint", "false")
  4382  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}")
  4383  	urls += "?" + c.urlParams_.Encode()
  4384  	req, err := http.NewRequest("GET", urls, body)
  4385  	if err != nil {
  4386  		return nil, err
  4387  	}
  4388  	req.Header = reqHeaders
  4389  	googleapi.Expand(req.URL, map[string]string{
  4390  		"appsId":                   c.appsId,
  4391  		"authorizedCertificatesId": c.authorizedCertificatesId,
  4392  	})
  4393  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4394  }
  4395  
  4396  // Do executes the "appengine.apps.authorizedCertificates.get" call.
  4397  // Any non-2xx status code is an error. Response headers are in either
  4398  // *AuthorizedCertificate.ServerResponse.Header or (if a response was returned
  4399  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4400  // check whether the returned error was because http.StatusNotModified was
  4401  // returned.
  4402  func (c *AppsAuthorizedCertificatesGetCall) Do(opts ...googleapi.CallOption) (*AuthorizedCertificate, error) {
  4403  	gensupport.SetOptions(c.urlParams_, opts...)
  4404  	res, err := c.doRequest("json")
  4405  	if res != nil && res.StatusCode == http.StatusNotModified {
  4406  		if res.Body != nil {
  4407  			res.Body.Close()
  4408  		}
  4409  		return nil, gensupport.WrapError(&googleapi.Error{
  4410  			Code:   res.StatusCode,
  4411  			Header: res.Header,
  4412  		})
  4413  	}
  4414  	if err != nil {
  4415  		return nil, err
  4416  	}
  4417  	defer googleapi.CloseBody(res)
  4418  	if err := googleapi.CheckResponse(res); err != nil {
  4419  		return nil, gensupport.WrapError(err)
  4420  	}
  4421  	ret := &AuthorizedCertificate{
  4422  		ServerResponse: googleapi.ServerResponse{
  4423  			Header:         res.Header,
  4424  			HTTPStatusCode: res.StatusCode,
  4425  		},
  4426  	}
  4427  	target := &ret
  4428  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4429  		return nil, err
  4430  	}
  4431  	return ret, nil
  4432  }
  4433  
  4434  type AppsAuthorizedCertificatesListCall struct {
  4435  	s            *APIService
  4436  	appsId       string
  4437  	urlParams_   gensupport.URLParams
  4438  	ifNoneMatch_ string
  4439  	ctx_         context.Context
  4440  	header_      http.Header
  4441  }
  4442  
  4443  // List: Lists all SSL certificates the user is authorized to administer.
  4444  //
  4445  //   - appsId: Part of `parent`. Name of the parent Application resource.
  4446  //     Example: apps/myapp.
  4447  func (r *AppsAuthorizedCertificatesService) List(appsId string) *AppsAuthorizedCertificatesListCall {
  4448  	c := &AppsAuthorizedCertificatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4449  	c.appsId = appsId
  4450  	return c
  4451  }
  4452  
  4453  // PageSize sets the optional parameter "pageSize": Maximum results to return
  4454  // per page.
  4455  func (c *AppsAuthorizedCertificatesListCall) PageSize(pageSize int64) *AppsAuthorizedCertificatesListCall {
  4456  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4457  	return c
  4458  }
  4459  
  4460  // PageToken sets the optional parameter "pageToken": Continuation token for
  4461  // fetching the next page of results.
  4462  func (c *AppsAuthorizedCertificatesListCall) PageToken(pageToken string) *AppsAuthorizedCertificatesListCall {
  4463  	c.urlParams_.Set("pageToken", pageToken)
  4464  	return c
  4465  }
  4466  
  4467  // View sets the optional parameter "view": Controls the set of fields returned
  4468  // in the LIST response.
  4469  //
  4470  // Possible values:
  4471  //
  4472  //	"BASIC_CERTIFICATE" - Basic certificate information, including applicable
  4473  //
  4474  // domains and expiration date.
  4475  //
  4476  //	"FULL_CERTIFICATE" - The information from BASIC_CERTIFICATE, plus detailed
  4477  //
  4478  // information on the domain mappings that have this certificate mapped.
  4479  func (c *AppsAuthorizedCertificatesListCall) View(view string) *AppsAuthorizedCertificatesListCall {
  4480  	c.urlParams_.Set("view", view)
  4481  	return c
  4482  }
  4483  
  4484  // Fields allows partial responses to be retrieved. See
  4485  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4486  // details.
  4487  func (c *AppsAuthorizedCertificatesListCall) Fields(s ...googleapi.Field) *AppsAuthorizedCertificatesListCall {
  4488  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4489  	return c
  4490  }
  4491  
  4492  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4493  // object's ETag matches the given value. This is useful for getting updates
  4494  // only after the object has changed since the last request.
  4495  func (c *AppsAuthorizedCertificatesListCall) IfNoneMatch(entityTag string) *AppsAuthorizedCertificatesListCall {
  4496  	c.ifNoneMatch_ = entityTag
  4497  	return c
  4498  }
  4499  
  4500  // Context sets the context to be used in this call's Do method.
  4501  func (c *AppsAuthorizedCertificatesListCall) Context(ctx context.Context) *AppsAuthorizedCertificatesListCall {
  4502  	c.ctx_ = ctx
  4503  	return c
  4504  }
  4505  
  4506  // Header returns a http.Header that can be modified by the caller to add
  4507  // headers to the request.
  4508  func (c *AppsAuthorizedCertificatesListCall) Header() http.Header {
  4509  	if c.header_ == nil {
  4510  		c.header_ = make(http.Header)
  4511  	}
  4512  	return c.header_
  4513  }
  4514  
  4515  func (c *AppsAuthorizedCertificatesListCall) doRequest(alt string) (*http.Response, error) {
  4516  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4517  	if c.ifNoneMatch_ != "" {
  4518  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4519  	}
  4520  	var body io.Reader = nil
  4521  	c.urlParams_.Set("alt", alt)
  4522  	c.urlParams_.Set("prettyPrint", "false")
  4523  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/authorizedCertificates")
  4524  	urls += "?" + c.urlParams_.Encode()
  4525  	req, err := http.NewRequest("GET", urls, body)
  4526  	if err != nil {
  4527  		return nil, err
  4528  	}
  4529  	req.Header = reqHeaders
  4530  	googleapi.Expand(req.URL, map[string]string{
  4531  		"appsId": c.appsId,
  4532  	})
  4533  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4534  }
  4535  
  4536  // Do executes the "appengine.apps.authorizedCertificates.list" call.
  4537  // Any non-2xx status code is an error. Response headers are in either
  4538  // *ListAuthorizedCertificatesResponse.ServerResponse.Header or (if a response
  4539  // was returned at all) in error.(*googleapi.Error).Header. Use
  4540  // googleapi.IsNotModified to check whether the returned error was because
  4541  // http.StatusNotModified was returned.
  4542  func (c *AppsAuthorizedCertificatesListCall) Do(opts ...googleapi.CallOption) (*ListAuthorizedCertificatesResponse, error) {
  4543  	gensupport.SetOptions(c.urlParams_, opts...)
  4544  	res, err := c.doRequest("json")
  4545  	if res != nil && res.StatusCode == http.StatusNotModified {
  4546  		if res.Body != nil {
  4547  			res.Body.Close()
  4548  		}
  4549  		return nil, gensupport.WrapError(&googleapi.Error{
  4550  			Code:   res.StatusCode,
  4551  			Header: res.Header,
  4552  		})
  4553  	}
  4554  	if err != nil {
  4555  		return nil, err
  4556  	}
  4557  	defer googleapi.CloseBody(res)
  4558  	if err := googleapi.CheckResponse(res); err != nil {
  4559  		return nil, gensupport.WrapError(err)
  4560  	}
  4561  	ret := &ListAuthorizedCertificatesResponse{
  4562  		ServerResponse: googleapi.ServerResponse{
  4563  			Header:         res.Header,
  4564  			HTTPStatusCode: res.StatusCode,
  4565  		},
  4566  	}
  4567  	target := &ret
  4568  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4569  		return nil, err
  4570  	}
  4571  	return ret, nil
  4572  }
  4573  
  4574  // Pages invokes f for each page of results.
  4575  // A non-nil error returned from f will halt the iteration.
  4576  // The provided context supersedes any context provided to the Context method.
  4577  func (c *AppsAuthorizedCertificatesListCall) Pages(ctx context.Context, f func(*ListAuthorizedCertificatesResponse) error) error {
  4578  	c.ctx_ = ctx
  4579  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  4580  	for {
  4581  		x, err := c.Do()
  4582  		if err != nil {
  4583  			return err
  4584  		}
  4585  		if err := f(x); err != nil {
  4586  			return err
  4587  		}
  4588  		if x.NextPageToken == "" {
  4589  			return nil
  4590  		}
  4591  		c.PageToken(x.NextPageToken)
  4592  	}
  4593  }
  4594  
  4595  type AppsAuthorizedCertificatesPatchCall struct {
  4596  	s                        *APIService
  4597  	appsId                   string
  4598  	authorizedCertificatesId string
  4599  	authorizedcertificate    *AuthorizedCertificate
  4600  	urlParams_               gensupport.URLParams
  4601  	ctx_                     context.Context
  4602  	header_                  http.Header
  4603  }
  4604  
  4605  // Patch: Updates the specified SSL certificate. To renew a certificate and
  4606  // maintain its existing domain mappings, update certificate_data with a new
  4607  // certificate. The new certificate must be applicable to the same domains as
  4608  // the original certificate. The certificate display_name may also be updated.
  4609  //
  4610  //   - appsId: Part of `name`. Name of the resource to update. Example:
  4611  //     apps/myapp/authorizedCertificates/12345.
  4612  //   - authorizedCertificatesId: Part of `name`. See documentation of `appsId`.
  4613  func (r *AppsAuthorizedCertificatesService) Patch(appsId string, authorizedCertificatesId string, authorizedcertificate *AuthorizedCertificate) *AppsAuthorizedCertificatesPatchCall {
  4614  	c := &AppsAuthorizedCertificatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4615  	c.appsId = appsId
  4616  	c.authorizedCertificatesId = authorizedCertificatesId
  4617  	c.authorizedcertificate = authorizedcertificate
  4618  	return c
  4619  }
  4620  
  4621  // UpdateMask sets the optional parameter "updateMask": Standard field mask for
  4622  // the set of fields to be updated. Updates are only supported on the
  4623  // certificate_raw_data and display_name fields.
  4624  func (c *AppsAuthorizedCertificatesPatchCall) UpdateMask(updateMask string) *AppsAuthorizedCertificatesPatchCall {
  4625  	c.urlParams_.Set("updateMask", updateMask)
  4626  	return c
  4627  }
  4628  
  4629  // Fields allows partial responses to be retrieved. See
  4630  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4631  // details.
  4632  func (c *AppsAuthorizedCertificatesPatchCall) Fields(s ...googleapi.Field) *AppsAuthorizedCertificatesPatchCall {
  4633  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4634  	return c
  4635  }
  4636  
  4637  // Context sets the context to be used in this call's Do method.
  4638  func (c *AppsAuthorizedCertificatesPatchCall) Context(ctx context.Context) *AppsAuthorizedCertificatesPatchCall {
  4639  	c.ctx_ = ctx
  4640  	return c
  4641  }
  4642  
  4643  // Header returns a http.Header that can be modified by the caller to add
  4644  // headers to the request.
  4645  func (c *AppsAuthorizedCertificatesPatchCall) Header() http.Header {
  4646  	if c.header_ == nil {
  4647  		c.header_ = make(http.Header)
  4648  	}
  4649  	return c.header_
  4650  }
  4651  
  4652  func (c *AppsAuthorizedCertificatesPatchCall) doRequest(alt string) (*http.Response, error) {
  4653  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4654  	var body io.Reader = nil
  4655  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.authorizedcertificate)
  4656  	if err != nil {
  4657  		return nil, err
  4658  	}
  4659  	c.urlParams_.Set("alt", alt)
  4660  	c.urlParams_.Set("prettyPrint", "false")
  4661  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}")
  4662  	urls += "?" + c.urlParams_.Encode()
  4663  	req, err := http.NewRequest("PATCH", urls, body)
  4664  	if err != nil {
  4665  		return nil, err
  4666  	}
  4667  	req.Header = reqHeaders
  4668  	googleapi.Expand(req.URL, map[string]string{
  4669  		"appsId":                   c.appsId,
  4670  		"authorizedCertificatesId": c.authorizedCertificatesId,
  4671  	})
  4672  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4673  }
  4674  
  4675  // Do executes the "appengine.apps.authorizedCertificates.patch" call.
  4676  // Any non-2xx status code is an error. Response headers are in either
  4677  // *AuthorizedCertificate.ServerResponse.Header or (if a response was returned
  4678  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4679  // check whether the returned error was because http.StatusNotModified was
  4680  // returned.
  4681  func (c *AppsAuthorizedCertificatesPatchCall) Do(opts ...googleapi.CallOption) (*AuthorizedCertificate, error) {
  4682  	gensupport.SetOptions(c.urlParams_, opts...)
  4683  	res, err := c.doRequest("json")
  4684  	if res != nil && res.StatusCode == http.StatusNotModified {
  4685  		if res.Body != nil {
  4686  			res.Body.Close()
  4687  		}
  4688  		return nil, gensupport.WrapError(&googleapi.Error{
  4689  			Code:   res.StatusCode,
  4690  			Header: res.Header,
  4691  		})
  4692  	}
  4693  	if err != nil {
  4694  		return nil, err
  4695  	}
  4696  	defer googleapi.CloseBody(res)
  4697  	if err := googleapi.CheckResponse(res); err != nil {
  4698  		return nil, gensupport.WrapError(err)
  4699  	}
  4700  	ret := &AuthorizedCertificate{
  4701  		ServerResponse: googleapi.ServerResponse{
  4702  			Header:         res.Header,
  4703  			HTTPStatusCode: res.StatusCode,
  4704  		},
  4705  	}
  4706  	target := &ret
  4707  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4708  		return nil, err
  4709  	}
  4710  	return ret, nil
  4711  }
  4712  
  4713  type AppsAuthorizedDomainsListCall struct {
  4714  	s            *APIService
  4715  	appsId       string
  4716  	urlParams_   gensupport.URLParams
  4717  	ifNoneMatch_ string
  4718  	ctx_         context.Context
  4719  	header_      http.Header
  4720  }
  4721  
  4722  // List: Lists all domains the user is authorized to administer.
  4723  //
  4724  //   - appsId: Part of `parent`. Name of the parent Application resource.
  4725  //     Example: apps/myapp.
  4726  func (r *AppsAuthorizedDomainsService) List(appsId string) *AppsAuthorizedDomainsListCall {
  4727  	c := &AppsAuthorizedDomainsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4728  	c.appsId = appsId
  4729  	return c
  4730  }
  4731  
  4732  // PageSize sets the optional parameter "pageSize": Maximum results to return
  4733  // per page.
  4734  func (c *AppsAuthorizedDomainsListCall) PageSize(pageSize int64) *AppsAuthorizedDomainsListCall {
  4735  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4736  	return c
  4737  }
  4738  
  4739  // PageToken sets the optional parameter "pageToken": Continuation token for
  4740  // fetching the next page of results.
  4741  func (c *AppsAuthorizedDomainsListCall) PageToken(pageToken string) *AppsAuthorizedDomainsListCall {
  4742  	c.urlParams_.Set("pageToken", pageToken)
  4743  	return c
  4744  }
  4745  
  4746  // Fields allows partial responses to be retrieved. See
  4747  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4748  // details.
  4749  func (c *AppsAuthorizedDomainsListCall) Fields(s ...googleapi.Field) *AppsAuthorizedDomainsListCall {
  4750  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4751  	return c
  4752  }
  4753  
  4754  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4755  // object's ETag matches the given value. This is useful for getting updates
  4756  // only after the object has changed since the last request.
  4757  func (c *AppsAuthorizedDomainsListCall) IfNoneMatch(entityTag string) *AppsAuthorizedDomainsListCall {
  4758  	c.ifNoneMatch_ = entityTag
  4759  	return c
  4760  }
  4761  
  4762  // Context sets the context to be used in this call's Do method.
  4763  func (c *AppsAuthorizedDomainsListCall) Context(ctx context.Context) *AppsAuthorizedDomainsListCall {
  4764  	c.ctx_ = ctx
  4765  	return c
  4766  }
  4767  
  4768  // Header returns a http.Header that can be modified by the caller to add
  4769  // headers to the request.
  4770  func (c *AppsAuthorizedDomainsListCall) Header() http.Header {
  4771  	if c.header_ == nil {
  4772  		c.header_ = make(http.Header)
  4773  	}
  4774  	return c.header_
  4775  }
  4776  
  4777  func (c *AppsAuthorizedDomainsListCall) doRequest(alt string) (*http.Response, error) {
  4778  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4779  	if c.ifNoneMatch_ != "" {
  4780  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4781  	}
  4782  	var body io.Reader = nil
  4783  	c.urlParams_.Set("alt", alt)
  4784  	c.urlParams_.Set("prettyPrint", "false")
  4785  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/authorizedDomains")
  4786  	urls += "?" + c.urlParams_.Encode()
  4787  	req, err := http.NewRequest("GET", urls, body)
  4788  	if err != nil {
  4789  		return nil, err
  4790  	}
  4791  	req.Header = reqHeaders
  4792  	googleapi.Expand(req.URL, map[string]string{
  4793  		"appsId": c.appsId,
  4794  	})
  4795  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4796  }
  4797  
  4798  // Do executes the "appengine.apps.authorizedDomains.list" call.
  4799  // Any non-2xx status code is an error. Response headers are in either
  4800  // *ListAuthorizedDomainsResponse.ServerResponse.Header or (if a response was
  4801  // returned at all) in error.(*googleapi.Error).Header. Use
  4802  // googleapi.IsNotModified to check whether the returned error was because
  4803  // http.StatusNotModified was returned.
  4804  func (c *AppsAuthorizedDomainsListCall) Do(opts ...googleapi.CallOption) (*ListAuthorizedDomainsResponse, error) {
  4805  	gensupport.SetOptions(c.urlParams_, opts...)
  4806  	res, err := c.doRequest("json")
  4807  	if res != nil && res.StatusCode == http.StatusNotModified {
  4808  		if res.Body != nil {
  4809  			res.Body.Close()
  4810  		}
  4811  		return nil, gensupport.WrapError(&googleapi.Error{
  4812  			Code:   res.StatusCode,
  4813  			Header: res.Header,
  4814  		})
  4815  	}
  4816  	if err != nil {
  4817  		return nil, err
  4818  	}
  4819  	defer googleapi.CloseBody(res)
  4820  	if err := googleapi.CheckResponse(res); err != nil {
  4821  		return nil, gensupport.WrapError(err)
  4822  	}
  4823  	ret := &ListAuthorizedDomainsResponse{
  4824  		ServerResponse: googleapi.ServerResponse{
  4825  			Header:         res.Header,
  4826  			HTTPStatusCode: res.StatusCode,
  4827  		},
  4828  	}
  4829  	target := &ret
  4830  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4831  		return nil, err
  4832  	}
  4833  	return ret, nil
  4834  }
  4835  
  4836  // Pages invokes f for each page of results.
  4837  // A non-nil error returned from f will halt the iteration.
  4838  // The provided context supersedes any context provided to the Context method.
  4839  func (c *AppsAuthorizedDomainsListCall) Pages(ctx context.Context, f func(*ListAuthorizedDomainsResponse) error) error {
  4840  	c.ctx_ = ctx
  4841  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  4842  	for {
  4843  		x, err := c.Do()
  4844  		if err != nil {
  4845  			return err
  4846  		}
  4847  		if err := f(x); err != nil {
  4848  			return err
  4849  		}
  4850  		if x.NextPageToken == "" {
  4851  			return nil
  4852  		}
  4853  		c.PageToken(x.NextPageToken)
  4854  	}
  4855  }
  4856  
  4857  type AppsDomainMappingsCreateCall struct {
  4858  	s             *APIService
  4859  	appsId        string
  4860  	domainmapping *DomainMapping
  4861  	urlParams_    gensupport.URLParams
  4862  	ctx_          context.Context
  4863  	header_       http.Header
  4864  }
  4865  
  4866  // Create: Maps a domain to an application. A user must be authorized to
  4867  // administer a domain in order to map it to an application. For a list of
  4868  // available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.
  4869  //
  4870  //   - appsId: Part of `parent`. Name of the parent Application resource.
  4871  //     Example: apps/myapp.
  4872  func (r *AppsDomainMappingsService) Create(appsId string, domainmapping *DomainMapping) *AppsDomainMappingsCreateCall {
  4873  	c := &AppsDomainMappingsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4874  	c.appsId = appsId
  4875  	c.domainmapping = domainmapping
  4876  	return c
  4877  }
  4878  
  4879  // OverrideStrategy sets the optional parameter "overrideStrategy": Whether the
  4880  // domain creation should override any existing mappings for this domain. By
  4881  // default, overrides are rejected.
  4882  //
  4883  // Possible values:
  4884  //
  4885  //	"UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY" - Strategy unspecified. Defaults to
  4886  //
  4887  // STRICT.
  4888  //
  4889  //	"STRICT" - Overrides not allowed. If a mapping already exists for the
  4890  //
  4891  // specified domain, the request will return an ALREADY_EXISTS (409).
  4892  //
  4893  //	"OVERRIDE" - Overrides allowed. If a mapping already exists for the
  4894  //
  4895  // specified domain, the request will overwrite it. Note that this might stop
  4896  // another Google product from serving. For example, if the domain is mapped to
  4897  // another App Engine application, that app will no longer serve from that
  4898  // domain.
  4899  func (c *AppsDomainMappingsCreateCall) OverrideStrategy(overrideStrategy string) *AppsDomainMappingsCreateCall {
  4900  	c.urlParams_.Set("overrideStrategy", overrideStrategy)
  4901  	return c
  4902  }
  4903  
  4904  // Fields allows partial responses to be retrieved. See
  4905  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4906  // details.
  4907  func (c *AppsDomainMappingsCreateCall) Fields(s ...googleapi.Field) *AppsDomainMappingsCreateCall {
  4908  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4909  	return c
  4910  }
  4911  
  4912  // Context sets the context to be used in this call's Do method.
  4913  func (c *AppsDomainMappingsCreateCall) Context(ctx context.Context) *AppsDomainMappingsCreateCall {
  4914  	c.ctx_ = ctx
  4915  	return c
  4916  }
  4917  
  4918  // Header returns a http.Header that can be modified by the caller to add
  4919  // headers to the request.
  4920  func (c *AppsDomainMappingsCreateCall) Header() http.Header {
  4921  	if c.header_ == nil {
  4922  		c.header_ = make(http.Header)
  4923  	}
  4924  	return c.header_
  4925  }
  4926  
  4927  func (c *AppsDomainMappingsCreateCall) doRequest(alt string) (*http.Response, error) {
  4928  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4929  	var body io.Reader = nil
  4930  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.domainmapping)
  4931  	if err != nil {
  4932  		return nil, err
  4933  	}
  4934  	c.urlParams_.Set("alt", alt)
  4935  	c.urlParams_.Set("prettyPrint", "false")
  4936  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/domainMappings")
  4937  	urls += "?" + c.urlParams_.Encode()
  4938  	req, err := http.NewRequest("POST", urls, body)
  4939  	if err != nil {
  4940  		return nil, err
  4941  	}
  4942  	req.Header = reqHeaders
  4943  	googleapi.Expand(req.URL, map[string]string{
  4944  		"appsId": c.appsId,
  4945  	})
  4946  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4947  }
  4948  
  4949  // Do executes the "appengine.apps.domainMappings.create" call.
  4950  // Any non-2xx status code is an error. Response headers are in either
  4951  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4952  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4953  // whether the returned error was because http.StatusNotModified was returned.
  4954  func (c *AppsDomainMappingsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4955  	gensupport.SetOptions(c.urlParams_, opts...)
  4956  	res, err := c.doRequest("json")
  4957  	if res != nil && res.StatusCode == http.StatusNotModified {
  4958  		if res.Body != nil {
  4959  			res.Body.Close()
  4960  		}
  4961  		return nil, gensupport.WrapError(&googleapi.Error{
  4962  			Code:   res.StatusCode,
  4963  			Header: res.Header,
  4964  		})
  4965  	}
  4966  	if err != nil {
  4967  		return nil, err
  4968  	}
  4969  	defer googleapi.CloseBody(res)
  4970  	if err := googleapi.CheckResponse(res); err != nil {
  4971  		return nil, gensupport.WrapError(err)
  4972  	}
  4973  	ret := &Operation{
  4974  		ServerResponse: googleapi.ServerResponse{
  4975  			Header:         res.Header,
  4976  			HTTPStatusCode: res.StatusCode,
  4977  		},
  4978  	}
  4979  	target := &ret
  4980  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4981  		return nil, err
  4982  	}
  4983  	return ret, nil
  4984  }
  4985  
  4986  type AppsDomainMappingsDeleteCall struct {
  4987  	s                *APIService
  4988  	appsId           string
  4989  	domainMappingsId string
  4990  	urlParams_       gensupport.URLParams
  4991  	ctx_             context.Context
  4992  	header_          http.Header
  4993  }
  4994  
  4995  // Delete: Deletes the specified domain mapping. A user must be authorized to
  4996  // administer the associated domain in order to delete a DomainMapping
  4997  // resource.
  4998  //
  4999  //   - appsId: Part of `name`. Name of the resource to delete. Example:
  5000  //     apps/myapp/domainMappings/example.com.
  5001  //   - domainMappingsId: Part of `name`. See documentation of `appsId`.
  5002  func (r *AppsDomainMappingsService) Delete(appsId string, domainMappingsId string) *AppsDomainMappingsDeleteCall {
  5003  	c := &AppsDomainMappingsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5004  	c.appsId = appsId
  5005  	c.domainMappingsId = domainMappingsId
  5006  	return c
  5007  }
  5008  
  5009  // Fields allows partial responses to be retrieved. See
  5010  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5011  // details.
  5012  func (c *AppsDomainMappingsDeleteCall) Fields(s ...googleapi.Field) *AppsDomainMappingsDeleteCall {
  5013  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5014  	return c
  5015  }
  5016  
  5017  // Context sets the context to be used in this call's Do method.
  5018  func (c *AppsDomainMappingsDeleteCall) Context(ctx context.Context) *AppsDomainMappingsDeleteCall {
  5019  	c.ctx_ = ctx
  5020  	return c
  5021  }
  5022  
  5023  // Header returns a http.Header that can be modified by the caller to add
  5024  // headers to the request.
  5025  func (c *AppsDomainMappingsDeleteCall) Header() http.Header {
  5026  	if c.header_ == nil {
  5027  		c.header_ = make(http.Header)
  5028  	}
  5029  	return c.header_
  5030  }
  5031  
  5032  func (c *AppsDomainMappingsDeleteCall) doRequest(alt string) (*http.Response, error) {
  5033  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5034  	var body io.Reader = nil
  5035  	c.urlParams_.Set("alt", alt)
  5036  	c.urlParams_.Set("prettyPrint", "false")
  5037  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/domainMappings/{domainMappingsId}")
  5038  	urls += "?" + c.urlParams_.Encode()
  5039  	req, err := http.NewRequest("DELETE", urls, body)
  5040  	if err != nil {
  5041  		return nil, err
  5042  	}
  5043  	req.Header = reqHeaders
  5044  	googleapi.Expand(req.URL, map[string]string{
  5045  		"appsId":           c.appsId,
  5046  		"domainMappingsId": c.domainMappingsId,
  5047  	})
  5048  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5049  }
  5050  
  5051  // Do executes the "appengine.apps.domainMappings.delete" call.
  5052  // Any non-2xx status code is an error. Response headers are in either
  5053  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5054  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5055  // whether the returned error was because http.StatusNotModified was returned.
  5056  func (c *AppsDomainMappingsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5057  	gensupport.SetOptions(c.urlParams_, opts...)
  5058  	res, err := c.doRequest("json")
  5059  	if res != nil && res.StatusCode == http.StatusNotModified {
  5060  		if res.Body != nil {
  5061  			res.Body.Close()
  5062  		}
  5063  		return nil, gensupport.WrapError(&googleapi.Error{
  5064  			Code:   res.StatusCode,
  5065  			Header: res.Header,
  5066  		})
  5067  	}
  5068  	if err != nil {
  5069  		return nil, err
  5070  	}
  5071  	defer googleapi.CloseBody(res)
  5072  	if err := googleapi.CheckResponse(res); err != nil {
  5073  		return nil, gensupport.WrapError(err)
  5074  	}
  5075  	ret := &Operation{
  5076  		ServerResponse: googleapi.ServerResponse{
  5077  			Header:         res.Header,
  5078  			HTTPStatusCode: res.StatusCode,
  5079  		},
  5080  	}
  5081  	target := &ret
  5082  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5083  		return nil, err
  5084  	}
  5085  	return ret, nil
  5086  }
  5087  
  5088  type AppsDomainMappingsGetCall struct {
  5089  	s                *APIService
  5090  	appsId           string
  5091  	domainMappingsId string
  5092  	urlParams_       gensupport.URLParams
  5093  	ifNoneMatch_     string
  5094  	ctx_             context.Context
  5095  	header_          http.Header
  5096  }
  5097  
  5098  // Get: Gets the specified domain mapping.
  5099  //
  5100  //   - appsId: Part of `name`. Name of the resource requested. Example:
  5101  //     apps/myapp/domainMappings/example.com.
  5102  //   - domainMappingsId: Part of `name`. See documentation of `appsId`.
  5103  func (r *AppsDomainMappingsService) Get(appsId string, domainMappingsId string) *AppsDomainMappingsGetCall {
  5104  	c := &AppsDomainMappingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5105  	c.appsId = appsId
  5106  	c.domainMappingsId = domainMappingsId
  5107  	return c
  5108  }
  5109  
  5110  // Fields allows partial responses to be retrieved. See
  5111  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5112  // details.
  5113  func (c *AppsDomainMappingsGetCall) Fields(s ...googleapi.Field) *AppsDomainMappingsGetCall {
  5114  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5115  	return c
  5116  }
  5117  
  5118  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5119  // object's ETag matches the given value. This is useful for getting updates
  5120  // only after the object has changed since the last request.
  5121  func (c *AppsDomainMappingsGetCall) IfNoneMatch(entityTag string) *AppsDomainMappingsGetCall {
  5122  	c.ifNoneMatch_ = entityTag
  5123  	return c
  5124  }
  5125  
  5126  // Context sets the context to be used in this call's Do method.
  5127  func (c *AppsDomainMappingsGetCall) Context(ctx context.Context) *AppsDomainMappingsGetCall {
  5128  	c.ctx_ = ctx
  5129  	return c
  5130  }
  5131  
  5132  // Header returns a http.Header that can be modified by the caller to add
  5133  // headers to the request.
  5134  func (c *AppsDomainMappingsGetCall) Header() http.Header {
  5135  	if c.header_ == nil {
  5136  		c.header_ = make(http.Header)
  5137  	}
  5138  	return c.header_
  5139  }
  5140  
  5141  func (c *AppsDomainMappingsGetCall) doRequest(alt string) (*http.Response, error) {
  5142  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5143  	if c.ifNoneMatch_ != "" {
  5144  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5145  	}
  5146  	var body io.Reader = nil
  5147  	c.urlParams_.Set("alt", alt)
  5148  	c.urlParams_.Set("prettyPrint", "false")
  5149  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/domainMappings/{domainMappingsId}")
  5150  	urls += "?" + c.urlParams_.Encode()
  5151  	req, err := http.NewRequest("GET", urls, body)
  5152  	if err != nil {
  5153  		return nil, err
  5154  	}
  5155  	req.Header = reqHeaders
  5156  	googleapi.Expand(req.URL, map[string]string{
  5157  		"appsId":           c.appsId,
  5158  		"domainMappingsId": c.domainMappingsId,
  5159  	})
  5160  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5161  }
  5162  
  5163  // Do executes the "appengine.apps.domainMappings.get" call.
  5164  // Any non-2xx status code is an error. Response headers are in either
  5165  // *DomainMapping.ServerResponse.Header or (if a response was returned at all)
  5166  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5167  // whether the returned error was because http.StatusNotModified was returned.
  5168  func (c *AppsDomainMappingsGetCall) Do(opts ...googleapi.CallOption) (*DomainMapping, error) {
  5169  	gensupport.SetOptions(c.urlParams_, opts...)
  5170  	res, err := c.doRequest("json")
  5171  	if res != nil && res.StatusCode == http.StatusNotModified {
  5172  		if res.Body != nil {
  5173  			res.Body.Close()
  5174  		}
  5175  		return nil, gensupport.WrapError(&googleapi.Error{
  5176  			Code:   res.StatusCode,
  5177  			Header: res.Header,
  5178  		})
  5179  	}
  5180  	if err != nil {
  5181  		return nil, err
  5182  	}
  5183  	defer googleapi.CloseBody(res)
  5184  	if err := googleapi.CheckResponse(res); err != nil {
  5185  		return nil, gensupport.WrapError(err)
  5186  	}
  5187  	ret := &DomainMapping{
  5188  		ServerResponse: googleapi.ServerResponse{
  5189  			Header:         res.Header,
  5190  			HTTPStatusCode: res.StatusCode,
  5191  		},
  5192  	}
  5193  	target := &ret
  5194  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5195  		return nil, err
  5196  	}
  5197  	return ret, nil
  5198  }
  5199  
  5200  type AppsDomainMappingsListCall struct {
  5201  	s            *APIService
  5202  	appsId       string
  5203  	urlParams_   gensupport.URLParams
  5204  	ifNoneMatch_ string
  5205  	ctx_         context.Context
  5206  	header_      http.Header
  5207  }
  5208  
  5209  // List: Lists the domain mappings on an application.
  5210  //
  5211  //   - appsId: Part of `parent`. Name of the parent Application resource.
  5212  //     Example: apps/myapp.
  5213  func (r *AppsDomainMappingsService) List(appsId string) *AppsDomainMappingsListCall {
  5214  	c := &AppsDomainMappingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5215  	c.appsId = appsId
  5216  	return c
  5217  }
  5218  
  5219  // PageSize sets the optional parameter "pageSize": Maximum results to return
  5220  // per page.
  5221  func (c *AppsDomainMappingsListCall) PageSize(pageSize int64) *AppsDomainMappingsListCall {
  5222  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5223  	return c
  5224  }
  5225  
  5226  // PageToken sets the optional parameter "pageToken": Continuation token for
  5227  // fetching the next page of results.
  5228  func (c *AppsDomainMappingsListCall) PageToken(pageToken string) *AppsDomainMappingsListCall {
  5229  	c.urlParams_.Set("pageToken", pageToken)
  5230  	return c
  5231  }
  5232  
  5233  // Fields allows partial responses to be retrieved. See
  5234  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5235  // details.
  5236  func (c *AppsDomainMappingsListCall) Fields(s ...googleapi.Field) *AppsDomainMappingsListCall {
  5237  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5238  	return c
  5239  }
  5240  
  5241  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5242  // object's ETag matches the given value. This is useful for getting updates
  5243  // only after the object has changed since the last request.
  5244  func (c *AppsDomainMappingsListCall) IfNoneMatch(entityTag string) *AppsDomainMappingsListCall {
  5245  	c.ifNoneMatch_ = entityTag
  5246  	return c
  5247  }
  5248  
  5249  // Context sets the context to be used in this call's Do method.
  5250  func (c *AppsDomainMappingsListCall) Context(ctx context.Context) *AppsDomainMappingsListCall {
  5251  	c.ctx_ = ctx
  5252  	return c
  5253  }
  5254  
  5255  // Header returns a http.Header that can be modified by the caller to add
  5256  // headers to the request.
  5257  func (c *AppsDomainMappingsListCall) Header() http.Header {
  5258  	if c.header_ == nil {
  5259  		c.header_ = make(http.Header)
  5260  	}
  5261  	return c.header_
  5262  }
  5263  
  5264  func (c *AppsDomainMappingsListCall) doRequest(alt string) (*http.Response, error) {
  5265  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5266  	if c.ifNoneMatch_ != "" {
  5267  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5268  	}
  5269  	var body io.Reader = nil
  5270  	c.urlParams_.Set("alt", alt)
  5271  	c.urlParams_.Set("prettyPrint", "false")
  5272  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/domainMappings")
  5273  	urls += "?" + c.urlParams_.Encode()
  5274  	req, err := http.NewRequest("GET", urls, body)
  5275  	if err != nil {
  5276  		return nil, err
  5277  	}
  5278  	req.Header = reqHeaders
  5279  	googleapi.Expand(req.URL, map[string]string{
  5280  		"appsId": c.appsId,
  5281  	})
  5282  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5283  }
  5284  
  5285  // Do executes the "appengine.apps.domainMappings.list" call.
  5286  // Any non-2xx status code is an error. Response headers are in either
  5287  // *ListDomainMappingsResponse.ServerResponse.Header or (if a response was
  5288  // returned at all) in error.(*googleapi.Error).Header. Use
  5289  // googleapi.IsNotModified to check whether the returned error was because
  5290  // http.StatusNotModified was returned.
  5291  func (c *AppsDomainMappingsListCall) Do(opts ...googleapi.CallOption) (*ListDomainMappingsResponse, error) {
  5292  	gensupport.SetOptions(c.urlParams_, opts...)
  5293  	res, err := c.doRequest("json")
  5294  	if res != nil && res.StatusCode == http.StatusNotModified {
  5295  		if res.Body != nil {
  5296  			res.Body.Close()
  5297  		}
  5298  		return nil, gensupport.WrapError(&googleapi.Error{
  5299  			Code:   res.StatusCode,
  5300  			Header: res.Header,
  5301  		})
  5302  	}
  5303  	if err != nil {
  5304  		return nil, err
  5305  	}
  5306  	defer googleapi.CloseBody(res)
  5307  	if err := googleapi.CheckResponse(res); err != nil {
  5308  		return nil, gensupport.WrapError(err)
  5309  	}
  5310  	ret := &ListDomainMappingsResponse{
  5311  		ServerResponse: googleapi.ServerResponse{
  5312  			Header:         res.Header,
  5313  			HTTPStatusCode: res.StatusCode,
  5314  		},
  5315  	}
  5316  	target := &ret
  5317  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5318  		return nil, err
  5319  	}
  5320  	return ret, nil
  5321  }
  5322  
  5323  // Pages invokes f for each page of results.
  5324  // A non-nil error returned from f will halt the iteration.
  5325  // The provided context supersedes any context provided to the Context method.
  5326  func (c *AppsDomainMappingsListCall) Pages(ctx context.Context, f func(*ListDomainMappingsResponse) error) error {
  5327  	c.ctx_ = ctx
  5328  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5329  	for {
  5330  		x, err := c.Do()
  5331  		if err != nil {
  5332  			return err
  5333  		}
  5334  		if err := f(x); err != nil {
  5335  			return err
  5336  		}
  5337  		if x.NextPageToken == "" {
  5338  			return nil
  5339  		}
  5340  		c.PageToken(x.NextPageToken)
  5341  	}
  5342  }
  5343  
  5344  type AppsDomainMappingsPatchCall struct {
  5345  	s                *APIService
  5346  	appsId           string
  5347  	domainMappingsId string
  5348  	domainmapping    *DomainMapping
  5349  	urlParams_       gensupport.URLParams
  5350  	ctx_             context.Context
  5351  	header_          http.Header
  5352  }
  5353  
  5354  // Patch: Updates the specified domain mapping. To map an SSL certificate to a
  5355  // domain mapping, update certificate_id to point to an AuthorizedCertificate
  5356  // resource. A user must be authorized to administer the associated domain in
  5357  // order to update a DomainMapping resource.
  5358  //
  5359  //   - appsId: Part of `name`. Name of the resource to update. Example:
  5360  //     apps/myapp/domainMappings/example.com.
  5361  //   - domainMappingsId: Part of `name`. See documentation of `appsId`.
  5362  func (r *AppsDomainMappingsService) Patch(appsId string, domainMappingsId string, domainmapping *DomainMapping) *AppsDomainMappingsPatchCall {
  5363  	c := &AppsDomainMappingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5364  	c.appsId = appsId
  5365  	c.domainMappingsId = domainMappingsId
  5366  	c.domainmapping = domainmapping
  5367  	return c
  5368  }
  5369  
  5370  // UpdateMask sets the optional parameter "updateMask": Required. Standard
  5371  // field mask for the set of fields to be updated.
  5372  func (c *AppsDomainMappingsPatchCall) UpdateMask(updateMask string) *AppsDomainMappingsPatchCall {
  5373  	c.urlParams_.Set("updateMask", updateMask)
  5374  	return c
  5375  }
  5376  
  5377  // Fields allows partial responses to be retrieved. See
  5378  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5379  // details.
  5380  func (c *AppsDomainMappingsPatchCall) Fields(s ...googleapi.Field) *AppsDomainMappingsPatchCall {
  5381  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5382  	return c
  5383  }
  5384  
  5385  // Context sets the context to be used in this call's Do method.
  5386  func (c *AppsDomainMappingsPatchCall) Context(ctx context.Context) *AppsDomainMappingsPatchCall {
  5387  	c.ctx_ = ctx
  5388  	return c
  5389  }
  5390  
  5391  // Header returns a http.Header that can be modified by the caller to add
  5392  // headers to the request.
  5393  func (c *AppsDomainMappingsPatchCall) Header() http.Header {
  5394  	if c.header_ == nil {
  5395  		c.header_ = make(http.Header)
  5396  	}
  5397  	return c.header_
  5398  }
  5399  
  5400  func (c *AppsDomainMappingsPatchCall) doRequest(alt string) (*http.Response, error) {
  5401  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5402  	var body io.Reader = nil
  5403  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.domainmapping)
  5404  	if err != nil {
  5405  		return nil, err
  5406  	}
  5407  	c.urlParams_.Set("alt", alt)
  5408  	c.urlParams_.Set("prettyPrint", "false")
  5409  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/domainMappings/{domainMappingsId}")
  5410  	urls += "?" + c.urlParams_.Encode()
  5411  	req, err := http.NewRequest("PATCH", urls, body)
  5412  	if err != nil {
  5413  		return nil, err
  5414  	}
  5415  	req.Header = reqHeaders
  5416  	googleapi.Expand(req.URL, map[string]string{
  5417  		"appsId":           c.appsId,
  5418  		"domainMappingsId": c.domainMappingsId,
  5419  	})
  5420  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5421  }
  5422  
  5423  // Do executes the "appengine.apps.domainMappings.patch" call.
  5424  // Any non-2xx status code is an error. Response headers are in either
  5425  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5426  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5427  // whether the returned error was because http.StatusNotModified was returned.
  5428  func (c *AppsDomainMappingsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5429  	gensupport.SetOptions(c.urlParams_, opts...)
  5430  	res, err := c.doRequest("json")
  5431  	if res != nil && res.StatusCode == http.StatusNotModified {
  5432  		if res.Body != nil {
  5433  			res.Body.Close()
  5434  		}
  5435  		return nil, gensupport.WrapError(&googleapi.Error{
  5436  			Code:   res.StatusCode,
  5437  			Header: res.Header,
  5438  		})
  5439  	}
  5440  	if err != nil {
  5441  		return nil, err
  5442  	}
  5443  	defer googleapi.CloseBody(res)
  5444  	if err := googleapi.CheckResponse(res); err != nil {
  5445  		return nil, gensupport.WrapError(err)
  5446  	}
  5447  	ret := &Operation{
  5448  		ServerResponse: googleapi.ServerResponse{
  5449  			Header:         res.Header,
  5450  			HTTPStatusCode: res.StatusCode,
  5451  		},
  5452  	}
  5453  	target := &ret
  5454  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5455  		return nil, err
  5456  	}
  5457  	return ret, nil
  5458  }
  5459  
  5460  type AppsFirewallIngressRulesBatchUpdateCall struct {
  5461  	s                              *APIService
  5462  	appsId                         string
  5463  	batchupdateingressrulesrequest *BatchUpdateIngressRulesRequest
  5464  	urlParams_                     gensupport.URLParams
  5465  	ctx_                           context.Context
  5466  	header_                        http.Header
  5467  }
  5468  
  5469  // BatchUpdate: Replaces the entire firewall ruleset in one bulk operation.
  5470  // This overrides and replaces the rules of an existing firewall with the new
  5471  // rules.If the final rule does not match traffic with the '*' wildcard IP
  5472  // range, then an "allow all" rule is explicitly added to the end of the list.
  5473  //
  5474  //   - appsId: Part of `name`. Name of the Firewall collection to set. Example:
  5475  //     apps/myapp/firewall/ingressRules.
  5476  func (r *AppsFirewallIngressRulesService) BatchUpdate(appsId string, batchupdateingressrulesrequest *BatchUpdateIngressRulesRequest) *AppsFirewallIngressRulesBatchUpdateCall {
  5477  	c := &AppsFirewallIngressRulesBatchUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5478  	c.appsId = appsId
  5479  	c.batchupdateingressrulesrequest = batchupdateingressrulesrequest
  5480  	return c
  5481  }
  5482  
  5483  // Fields allows partial responses to be retrieved. See
  5484  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5485  // details.
  5486  func (c *AppsFirewallIngressRulesBatchUpdateCall) Fields(s ...googleapi.Field) *AppsFirewallIngressRulesBatchUpdateCall {
  5487  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5488  	return c
  5489  }
  5490  
  5491  // Context sets the context to be used in this call's Do method.
  5492  func (c *AppsFirewallIngressRulesBatchUpdateCall) Context(ctx context.Context) *AppsFirewallIngressRulesBatchUpdateCall {
  5493  	c.ctx_ = ctx
  5494  	return c
  5495  }
  5496  
  5497  // Header returns a http.Header that can be modified by the caller to add
  5498  // headers to the request.
  5499  func (c *AppsFirewallIngressRulesBatchUpdateCall) Header() http.Header {
  5500  	if c.header_ == nil {
  5501  		c.header_ = make(http.Header)
  5502  	}
  5503  	return c.header_
  5504  }
  5505  
  5506  func (c *AppsFirewallIngressRulesBatchUpdateCall) doRequest(alt string) (*http.Response, error) {
  5507  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5508  	var body io.Reader = nil
  5509  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchupdateingressrulesrequest)
  5510  	if err != nil {
  5511  		return nil, err
  5512  	}
  5513  	c.urlParams_.Set("alt", alt)
  5514  	c.urlParams_.Set("prettyPrint", "false")
  5515  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/firewall/ingressRules:batchUpdate")
  5516  	urls += "?" + c.urlParams_.Encode()
  5517  	req, err := http.NewRequest("POST", urls, body)
  5518  	if err != nil {
  5519  		return nil, err
  5520  	}
  5521  	req.Header = reqHeaders
  5522  	googleapi.Expand(req.URL, map[string]string{
  5523  		"appsId": c.appsId,
  5524  	})
  5525  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5526  }
  5527  
  5528  // Do executes the "appengine.apps.firewall.ingressRules.batchUpdate" call.
  5529  // Any non-2xx status code is an error. Response headers are in either
  5530  // *BatchUpdateIngressRulesResponse.ServerResponse.Header or (if a response was
  5531  // returned at all) in error.(*googleapi.Error).Header. Use
  5532  // googleapi.IsNotModified to check whether the returned error was because
  5533  // http.StatusNotModified was returned.
  5534  func (c *AppsFirewallIngressRulesBatchUpdateCall) Do(opts ...googleapi.CallOption) (*BatchUpdateIngressRulesResponse, error) {
  5535  	gensupport.SetOptions(c.urlParams_, opts...)
  5536  	res, err := c.doRequest("json")
  5537  	if res != nil && res.StatusCode == http.StatusNotModified {
  5538  		if res.Body != nil {
  5539  			res.Body.Close()
  5540  		}
  5541  		return nil, gensupport.WrapError(&googleapi.Error{
  5542  			Code:   res.StatusCode,
  5543  			Header: res.Header,
  5544  		})
  5545  	}
  5546  	if err != nil {
  5547  		return nil, err
  5548  	}
  5549  	defer googleapi.CloseBody(res)
  5550  	if err := googleapi.CheckResponse(res); err != nil {
  5551  		return nil, gensupport.WrapError(err)
  5552  	}
  5553  	ret := &BatchUpdateIngressRulesResponse{
  5554  		ServerResponse: googleapi.ServerResponse{
  5555  			Header:         res.Header,
  5556  			HTTPStatusCode: res.StatusCode,
  5557  		},
  5558  	}
  5559  	target := &ret
  5560  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5561  		return nil, err
  5562  	}
  5563  	return ret, nil
  5564  }
  5565  
  5566  type AppsFirewallIngressRulesCreateCall struct {
  5567  	s            *APIService
  5568  	appsId       string
  5569  	firewallrule *FirewallRule
  5570  	urlParams_   gensupport.URLParams
  5571  	ctx_         context.Context
  5572  	header_      http.Header
  5573  }
  5574  
  5575  // Create: Creates a firewall rule for the application.
  5576  //
  5577  //   - appsId: Part of `parent`. Name of the parent Firewall collection in which
  5578  //     to create a new rule. Example: apps/myapp/firewall/ingressRules.
  5579  func (r *AppsFirewallIngressRulesService) Create(appsId string, firewallrule *FirewallRule) *AppsFirewallIngressRulesCreateCall {
  5580  	c := &AppsFirewallIngressRulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5581  	c.appsId = appsId
  5582  	c.firewallrule = firewallrule
  5583  	return c
  5584  }
  5585  
  5586  // Fields allows partial responses to be retrieved. See
  5587  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5588  // details.
  5589  func (c *AppsFirewallIngressRulesCreateCall) Fields(s ...googleapi.Field) *AppsFirewallIngressRulesCreateCall {
  5590  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5591  	return c
  5592  }
  5593  
  5594  // Context sets the context to be used in this call's Do method.
  5595  func (c *AppsFirewallIngressRulesCreateCall) Context(ctx context.Context) *AppsFirewallIngressRulesCreateCall {
  5596  	c.ctx_ = ctx
  5597  	return c
  5598  }
  5599  
  5600  // Header returns a http.Header that can be modified by the caller to add
  5601  // headers to the request.
  5602  func (c *AppsFirewallIngressRulesCreateCall) Header() http.Header {
  5603  	if c.header_ == nil {
  5604  		c.header_ = make(http.Header)
  5605  	}
  5606  	return c.header_
  5607  }
  5608  
  5609  func (c *AppsFirewallIngressRulesCreateCall) doRequest(alt string) (*http.Response, error) {
  5610  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5611  	var body io.Reader = nil
  5612  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.firewallrule)
  5613  	if err != nil {
  5614  		return nil, err
  5615  	}
  5616  	c.urlParams_.Set("alt", alt)
  5617  	c.urlParams_.Set("prettyPrint", "false")
  5618  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/firewall/ingressRules")
  5619  	urls += "?" + c.urlParams_.Encode()
  5620  	req, err := http.NewRequest("POST", urls, body)
  5621  	if err != nil {
  5622  		return nil, err
  5623  	}
  5624  	req.Header = reqHeaders
  5625  	googleapi.Expand(req.URL, map[string]string{
  5626  		"appsId": c.appsId,
  5627  	})
  5628  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5629  }
  5630  
  5631  // Do executes the "appengine.apps.firewall.ingressRules.create" call.
  5632  // Any non-2xx status code is an error. Response headers are in either
  5633  // *FirewallRule.ServerResponse.Header or (if a response was returned at all)
  5634  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5635  // whether the returned error was because http.StatusNotModified was returned.
  5636  func (c *AppsFirewallIngressRulesCreateCall) Do(opts ...googleapi.CallOption) (*FirewallRule, error) {
  5637  	gensupport.SetOptions(c.urlParams_, opts...)
  5638  	res, err := c.doRequest("json")
  5639  	if res != nil && res.StatusCode == http.StatusNotModified {
  5640  		if res.Body != nil {
  5641  			res.Body.Close()
  5642  		}
  5643  		return nil, gensupport.WrapError(&googleapi.Error{
  5644  			Code:   res.StatusCode,
  5645  			Header: res.Header,
  5646  		})
  5647  	}
  5648  	if err != nil {
  5649  		return nil, err
  5650  	}
  5651  	defer googleapi.CloseBody(res)
  5652  	if err := googleapi.CheckResponse(res); err != nil {
  5653  		return nil, gensupport.WrapError(err)
  5654  	}
  5655  	ret := &FirewallRule{
  5656  		ServerResponse: googleapi.ServerResponse{
  5657  			Header:         res.Header,
  5658  			HTTPStatusCode: res.StatusCode,
  5659  		},
  5660  	}
  5661  	target := &ret
  5662  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5663  		return nil, err
  5664  	}
  5665  	return ret, nil
  5666  }
  5667  
  5668  type AppsFirewallIngressRulesDeleteCall struct {
  5669  	s              *APIService
  5670  	appsId         string
  5671  	ingressRulesId string
  5672  	urlParams_     gensupport.URLParams
  5673  	ctx_           context.Context
  5674  	header_        http.Header
  5675  }
  5676  
  5677  // Delete: Deletes the specified firewall rule.
  5678  //
  5679  //   - appsId: Part of `name`. Name of the Firewall resource to delete. Example:
  5680  //     apps/myapp/firewall/ingressRules/100.
  5681  //   - ingressRulesId: Part of `name`. See documentation of `appsId`.
  5682  func (r *AppsFirewallIngressRulesService) Delete(appsId string, ingressRulesId string) *AppsFirewallIngressRulesDeleteCall {
  5683  	c := &AppsFirewallIngressRulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5684  	c.appsId = appsId
  5685  	c.ingressRulesId = ingressRulesId
  5686  	return c
  5687  }
  5688  
  5689  // Fields allows partial responses to be retrieved. See
  5690  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5691  // details.
  5692  func (c *AppsFirewallIngressRulesDeleteCall) Fields(s ...googleapi.Field) *AppsFirewallIngressRulesDeleteCall {
  5693  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5694  	return c
  5695  }
  5696  
  5697  // Context sets the context to be used in this call's Do method.
  5698  func (c *AppsFirewallIngressRulesDeleteCall) Context(ctx context.Context) *AppsFirewallIngressRulesDeleteCall {
  5699  	c.ctx_ = ctx
  5700  	return c
  5701  }
  5702  
  5703  // Header returns a http.Header that can be modified by the caller to add
  5704  // headers to the request.
  5705  func (c *AppsFirewallIngressRulesDeleteCall) Header() http.Header {
  5706  	if c.header_ == nil {
  5707  		c.header_ = make(http.Header)
  5708  	}
  5709  	return c.header_
  5710  }
  5711  
  5712  func (c *AppsFirewallIngressRulesDeleteCall) doRequest(alt string) (*http.Response, error) {
  5713  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5714  	var body io.Reader = nil
  5715  	c.urlParams_.Set("alt", alt)
  5716  	c.urlParams_.Set("prettyPrint", "false")
  5717  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}")
  5718  	urls += "?" + c.urlParams_.Encode()
  5719  	req, err := http.NewRequest("DELETE", urls, body)
  5720  	if err != nil {
  5721  		return nil, err
  5722  	}
  5723  	req.Header = reqHeaders
  5724  	googleapi.Expand(req.URL, map[string]string{
  5725  		"appsId":         c.appsId,
  5726  		"ingressRulesId": c.ingressRulesId,
  5727  	})
  5728  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5729  }
  5730  
  5731  // Do executes the "appengine.apps.firewall.ingressRules.delete" call.
  5732  // Any non-2xx status code is an error. Response headers are in either
  5733  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  5734  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5735  // whether the returned error was because http.StatusNotModified was returned.
  5736  func (c *AppsFirewallIngressRulesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  5737  	gensupport.SetOptions(c.urlParams_, opts...)
  5738  	res, err := c.doRequest("json")
  5739  	if res != nil && res.StatusCode == http.StatusNotModified {
  5740  		if res.Body != nil {
  5741  			res.Body.Close()
  5742  		}
  5743  		return nil, gensupport.WrapError(&googleapi.Error{
  5744  			Code:   res.StatusCode,
  5745  			Header: res.Header,
  5746  		})
  5747  	}
  5748  	if err != nil {
  5749  		return nil, err
  5750  	}
  5751  	defer googleapi.CloseBody(res)
  5752  	if err := googleapi.CheckResponse(res); err != nil {
  5753  		return nil, gensupport.WrapError(err)
  5754  	}
  5755  	ret := &Empty{
  5756  		ServerResponse: googleapi.ServerResponse{
  5757  			Header:         res.Header,
  5758  			HTTPStatusCode: res.StatusCode,
  5759  		},
  5760  	}
  5761  	target := &ret
  5762  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5763  		return nil, err
  5764  	}
  5765  	return ret, nil
  5766  }
  5767  
  5768  type AppsFirewallIngressRulesGetCall struct {
  5769  	s              *APIService
  5770  	appsId         string
  5771  	ingressRulesId string
  5772  	urlParams_     gensupport.URLParams
  5773  	ifNoneMatch_   string
  5774  	ctx_           context.Context
  5775  	header_        http.Header
  5776  }
  5777  
  5778  // Get: Gets the specified firewall rule.
  5779  //
  5780  //   - appsId: Part of `name`. Name of the Firewall resource to retrieve.
  5781  //     Example: apps/myapp/firewall/ingressRules/100.
  5782  //   - ingressRulesId: Part of `name`. See documentation of `appsId`.
  5783  func (r *AppsFirewallIngressRulesService) Get(appsId string, ingressRulesId string) *AppsFirewallIngressRulesGetCall {
  5784  	c := &AppsFirewallIngressRulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5785  	c.appsId = appsId
  5786  	c.ingressRulesId = ingressRulesId
  5787  	return c
  5788  }
  5789  
  5790  // Fields allows partial responses to be retrieved. See
  5791  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5792  // details.
  5793  func (c *AppsFirewallIngressRulesGetCall) Fields(s ...googleapi.Field) *AppsFirewallIngressRulesGetCall {
  5794  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5795  	return c
  5796  }
  5797  
  5798  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5799  // object's ETag matches the given value. This is useful for getting updates
  5800  // only after the object has changed since the last request.
  5801  func (c *AppsFirewallIngressRulesGetCall) IfNoneMatch(entityTag string) *AppsFirewallIngressRulesGetCall {
  5802  	c.ifNoneMatch_ = entityTag
  5803  	return c
  5804  }
  5805  
  5806  // Context sets the context to be used in this call's Do method.
  5807  func (c *AppsFirewallIngressRulesGetCall) Context(ctx context.Context) *AppsFirewallIngressRulesGetCall {
  5808  	c.ctx_ = ctx
  5809  	return c
  5810  }
  5811  
  5812  // Header returns a http.Header that can be modified by the caller to add
  5813  // headers to the request.
  5814  func (c *AppsFirewallIngressRulesGetCall) Header() http.Header {
  5815  	if c.header_ == nil {
  5816  		c.header_ = make(http.Header)
  5817  	}
  5818  	return c.header_
  5819  }
  5820  
  5821  func (c *AppsFirewallIngressRulesGetCall) doRequest(alt string) (*http.Response, error) {
  5822  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5823  	if c.ifNoneMatch_ != "" {
  5824  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5825  	}
  5826  	var body io.Reader = nil
  5827  	c.urlParams_.Set("alt", alt)
  5828  	c.urlParams_.Set("prettyPrint", "false")
  5829  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}")
  5830  	urls += "?" + c.urlParams_.Encode()
  5831  	req, err := http.NewRequest("GET", urls, body)
  5832  	if err != nil {
  5833  		return nil, err
  5834  	}
  5835  	req.Header = reqHeaders
  5836  	googleapi.Expand(req.URL, map[string]string{
  5837  		"appsId":         c.appsId,
  5838  		"ingressRulesId": c.ingressRulesId,
  5839  	})
  5840  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5841  }
  5842  
  5843  // Do executes the "appengine.apps.firewall.ingressRules.get" call.
  5844  // Any non-2xx status code is an error. Response headers are in either
  5845  // *FirewallRule.ServerResponse.Header or (if a response was returned at all)
  5846  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5847  // whether the returned error was because http.StatusNotModified was returned.
  5848  func (c *AppsFirewallIngressRulesGetCall) Do(opts ...googleapi.CallOption) (*FirewallRule, error) {
  5849  	gensupport.SetOptions(c.urlParams_, opts...)
  5850  	res, err := c.doRequest("json")
  5851  	if res != nil && res.StatusCode == http.StatusNotModified {
  5852  		if res.Body != nil {
  5853  			res.Body.Close()
  5854  		}
  5855  		return nil, gensupport.WrapError(&googleapi.Error{
  5856  			Code:   res.StatusCode,
  5857  			Header: res.Header,
  5858  		})
  5859  	}
  5860  	if err != nil {
  5861  		return nil, err
  5862  	}
  5863  	defer googleapi.CloseBody(res)
  5864  	if err := googleapi.CheckResponse(res); err != nil {
  5865  		return nil, gensupport.WrapError(err)
  5866  	}
  5867  	ret := &FirewallRule{
  5868  		ServerResponse: googleapi.ServerResponse{
  5869  			Header:         res.Header,
  5870  			HTTPStatusCode: res.StatusCode,
  5871  		},
  5872  	}
  5873  	target := &ret
  5874  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5875  		return nil, err
  5876  	}
  5877  	return ret, nil
  5878  }
  5879  
  5880  type AppsFirewallIngressRulesListCall struct {
  5881  	s            *APIService
  5882  	appsId       string
  5883  	urlParams_   gensupport.URLParams
  5884  	ifNoneMatch_ string
  5885  	ctx_         context.Context
  5886  	header_      http.Header
  5887  }
  5888  
  5889  // List: Lists the firewall rules of an application.
  5890  //
  5891  //   - appsId: Part of `parent`. Name of the Firewall collection to retrieve.
  5892  //     Example: apps/myapp/firewall/ingressRules.
  5893  func (r *AppsFirewallIngressRulesService) List(appsId string) *AppsFirewallIngressRulesListCall {
  5894  	c := &AppsFirewallIngressRulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5895  	c.appsId = appsId
  5896  	return c
  5897  }
  5898  
  5899  // MatchingAddress sets the optional parameter "matchingAddress": A valid IP
  5900  // Address. If set, only rules matching this address will be returned. The
  5901  // first returned rule will be the rule that fires on requests from this IP.
  5902  func (c *AppsFirewallIngressRulesListCall) MatchingAddress(matchingAddress string) *AppsFirewallIngressRulesListCall {
  5903  	c.urlParams_.Set("matchingAddress", matchingAddress)
  5904  	return c
  5905  }
  5906  
  5907  // PageSize sets the optional parameter "pageSize": Maximum results to return
  5908  // per page.
  5909  func (c *AppsFirewallIngressRulesListCall) PageSize(pageSize int64) *AppsFirewallIngressRulesListCall {
  5910  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5911  	return c
  5912  }
  5913  
  5914  // PageToken sets the optional parameter "pageToken": Continuation token for
  5915  // fetching the next page of results.
  5916  func (c *AppsFirewallIngressRulesListCall) PageToken(pageToken string) *AppsFirewallIngressRulesListCall {
  5917  	c.urlParams_.Set("pageToken", pageToken)
  5918  	return c
  5919  }
  5920  
  5921  // Fields allows partial responses to be retrieved. See
  5922  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5923  // details.
  5924  func (c *AppsFirewallIngressRulesListCall) Fields(s ...googleapi.Field) *AppsFirewallIngressRulesListCall {
  5925  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5926  	return c
  5927  }
  5928  
  5929  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5930  // object's ETag matches the given value. This is useful for getting updates
  5931  // only after the object has changed since the last request.
  5932  func (c *AppsFirewallIngressRulesListCall) IfNoneMatch(entityTag string) *AppsFirewallIngressRulesListCall {
  5933  	c.ifNoneMatch_ = entityTag
  5934  	return c
  5935  }
  5936  
  5937  // Context sets the context to be used in this call's Do method.
  5938  func (c *AppsFirewallIngressRulesListCall) Context(ctx context.Context) *AppsFirewallIngressRulesListCall {
  5939  	c.ctx_ = ctx
  5940  	return c
  5941  }
  5942  
  5943  // Header returns a http.Header that can be modified by the caller to add
  5944  // headers to the request.
  5945  func (c *AppsFirewallIngressRulesListCall) Header() http.Header {
  5946  	if c.header_ == nil {
  5947  		c.header_ = make(http.Header)
  5948  	}
  5949  	return c.header_
  5950  }
  5951  
  5952  func (c *AppsFirewallIngressRulesListCall) doRequest(alt string) (*http.Response, error) {
  5953  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5954  	if c.ifNoneMatch_ != "" {
  5955  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5956  	}
  5957  	var body io.Reader = nil
  5958  	c.urlParams_.Set("alt", alt)
  5959  	c.urlParams_.Set("prettyPrint", "false")
  5960  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/firewall/ingressRules")
  5961  	urls += "?" + c.urlParams_.Encode()
  5962  	req, err := http.NewRequest("GET", urls, body)
  5963  	if err != nil {
  5964  		return nil, err
  5965  	}
  5966  	req.Header = reqHeaders
  5967  	googleapi.Expand(req.URL, map[string]string{
  5968  		"appsId": c.appsId,
  5969  	})
  5970  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5971  }
  5972  
  5973  // Do executes the "appengine.apps.firewall.ingressRules.list" call.
  5974  // Any non-2xx status code is an error. Response headers are in either
  5975  // *ListIngressRulesResponse.ServerResponse.Header or (if a response was
  5976  // returned at all) in error.(*googleapi.Error).Header. Use
  5977  // googleapi.IsNotModified to check whether the returned error was because
  5978  // http.StatusNotModified was returned.
  5979  func (c *AppsFirewallIngressRulesListCall) Do(opts ...googleapi.CallOption) (*ListIngressRulesResponse, error) {
  5980  	gensupport.SetOptions(c.urlParams_, opts...)
  5981  	res, err := c.doRequest("json")
  5982  	if res != nil && res.StatusCode == http.StatusNotModified {
  5983  		if res.Body != nil {
  5984  			res.Body.Close()
  5985  		}
  5986  		return nil, gensupport.WrapError(&googleapi.Error{
  5987  			Code:   res.StatusCode,
  5988  			Header: res.Header,
  5989  		})
  5990  	}
  5991  	if err != nil {
  5992  		return nil, err
  5993  	}
  5994  	defer googleapi.CloseBody(res)
  5995  	if err := googleapi.CheckResponse(res); err != nil {
  5996  		return nil, gensupport.WrapError(err)
  5997  	}
  5998  	ret := &ListIngressRulesResponse{
  5999  		ServerResponse: googleapi.ServerResponse{
  6000  			Header:         res.Header,
  6001  			HTTPStatusCode: res.StatusCode,
  6002  		},
  6003  	}
  6004  	target := &ret
  6005  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6006  		return nil, err
  6007  	}
  6008  	return ret, nil
  6009  }
  6010  
  6011  // Pages invokes f for each page of results.
  6012  // A non-nil error returned from f will halt the iteration.
  6013  // The provided context supersedes any context provided to the Context method.
  6014  func (c *AppsFirewallIngressRulesListCall) Pages(ctx context.Context, f func(*ListIngressRulesResponse) error) error {
  6015  	c.ctx_ = ctx
  6016  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6017  	for {
  6018  		x, err := c.Do()
  6019  		if err != nil {
  6020  			return err
  6021  		}
  6022  		if err := f(x); err != nil {
  6023  			return err
  6024  		}
  6025  		if x.NextPageToken == "" {
  6026  			return nil
  6027  		}
  6028  		c.PageToken(x.NextPageToken)
  6029  	}
  6030  }
  6031  
  6032  type AppsFirewallIngressRulesPatchCall struct {
  6033  	s              *APIService
  6034  	appsId         string
  6035  	ingressRulesId string
  6036  	firewallrule   *FirewallRule
  6037  	urlParams_     gensupport.URLParams
  6038  	ctx_           context.Context
  6039  	header_        http.Header
  6040  }
  6041  
  6042  // Patch: Updates the specified firewall rule.
  6043  //
  6044  //   - appsId: Part of `name`. Name of the Firewall resource to update. Example:
  6045  //     apps/myapp/firewall/ingressRules/100.
  6046  //   - ingressRulesId: Part of `name`. See documentation of `appsId`.
  6047  func (r *AppsFirewallIngressRulesService) Patch(appsId string, ingressRulesId string, firewallrule *FirewallRule) *AppsFirewallIngressRulesPatchCall {
  6048  	c := &AppsFirewallIngressRulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6049  	c.appsId = appsId
  6050  	c.ingressRulesId = ingressRulesId
  6051  	c.firewallrule = firewallrule
  6052  	return c
  6053  }
  6054  
  6055  // UpdateMask sets the optional parameter "updateMask": Standard field mask for
  6056  // the set of fields to be updated.
  6057  func (c *AppsFirewallIngressRulesPatchCall) UpdateMask(updateMask string) *AppsFirewallIngressRulesPatchCall {
  6058  	c.urlParams_.Set("updateMask", updateMask)
  6059  	return c
  6060  }
  6061  
  6062  // Fields allows partial responses to be retrieved. See
  6063  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6064  // details.
  6065  func (c *AppsFirewallIngressRulesPatchCall) Fields(s ...googleapi.Field) *AppsFirewallIngressRulesPatchCall {
  6066  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6067  	return c
  6068  }
  6069  
  6070  // Context sets the context to be used in this call's Do method.
  6071  func (c *AppsFirewallIngressRulesPatchCall) Context(ctx context.Context) *AppsFirewallIngressRulesPatchCall {
  6072  	c.ctx_ = ctx
  6073  	return c
  6074  }
  6075  
  6076  // Header returns a http.Header that can be modified by the caller to add
  6077  // headers to the request.
  6078  func (c *AppsFirewallIngressRulesPatchCall) Header() http.Header {
  6079  	if c.header_ == nil {
  6080  		c.header_ = make(http.Header)
  6081  	}
  6082  	return c.header_
  6083  }
  6084  
  6085  func (c *AppsFirewallIngressRulesPatchCall) doRequest(alt string) (*http.Response, error) {
  6086  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6087  	var body io.Reader = nil
  6088  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.firewallrule)
  6089  	if err != nil {
  6090  		return nil, err
  6091  	}
  6092  	c.urlParams_.Set("alt", alt)
  6093  	c.urlParams_.Set("prettyPrint", "false")
  6094  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}")
  6095  	urls += "?" + c.urlParams_.Encode()
  6096  	req, err := http.NewRequest("PATCH", urls, body)
  6097  	if err != nil {
  6098  		return nil, err
  6099  	}
  6100  	req.Header = reqHeaders
  6101  	googleapi.Expand(req.URL, map[string]string{
  6102  		"appsId":         c.appsId,
  6103  		"ingressRulesId": c.ingressRulesId,
  6104  	})
  6105  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6106  }
  6107  
  6108  // Do executes the "appengine.apps.firewall.ingressRules.patch" call.
  6109  // Any non-2xx status code is an error. Response headers are in either
  6110  // *FirewallRule.ServerResponse.Header or (if a response was returned at all)
  6111  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6112  // whether the returned error was because http.StatusNotModified was returned.
  6113  func (c *AppsFirewallIngressRulesPatchCall) Do(opts ...googleapi.CallOption) (*FirewallRule, error) {
  6114  	gensupport.SetOptions(c.urlParams_, opts...)
  6115  	res, err := c.doRequest("json")
  6116  	if res != nil && res.StatusCode == http.StatusNotModified {
  6117  		if res.Body != nil {
  6118  			res.Body.Close()
  6119  		}
  6120  		return nil, gensupport.WrapError(&googleapi.Error{
  6121  			Code:   res.StatusCode,
  6122  			Header: res.Header,
  6123  		})
  6124  	}
  6125  	if err != nil {
  6126  		return nil, err
  6127  	}
  6128  	defer googleapi.CloseBody(res)
  6129  	if err := googleapi.CheckResponse(res); err != nil {
  6130  		return nil, gensupport.WrapError(err)
  6131  	}
  6132  	ret := &FirewallRule{
  6133  		ServerResponse: googleapi.ServerResponse{
  6134  			Header:         res.Header,
  6135  			HTTPStatusCode: res.StatusCode,
  6136  		},
  6137  	}
  6138  	target := &ret
  6139  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6140  		return nil, err
  6141  	}
  6142  	return ret, nil
  6143  }
  6144  
  6145  type AppsLocationsGetCall struct {
  6146  	s            *APIService
  6147  	appsId       string
  6148  	locationsId  string
  6149  	urlParams_   gensupport.URLParams
  6150  	ifNoneMatch_ string
  6151  	ctx_         context.Context
  6152  	header_      http.Header
  6153  }
  6154  
  6155  // Get: Gets information about a location.
  6156  //
  6157  // - appsId: Part of `name`. Resource name for the location.
  6158  // - locationsId: Part of `name`. See documentation of `appsId`.
  6159  func (r *AppsLocationsService) Get(appsId string, locationsId string) *AppsLocationsGetCall {
  6160  	c := &AppsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6161  	c.appsId = appsId
  6162  	c.locationsId = locationsId
  6163  	return c
  6164  }
  6165  
  6166  // Fields allows partial responses to be retrieved. See
  6167  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6168  // details.
  6169  func (c *AppsLocationsGetCall) Fields(s ...googleapi.Field) *AppsLocationsGetCall {
  6170  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6171  	return c
  6172  }
  6173  
  6174  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6175  // object's ETag matches the given value. This is useful for getting updates
  6176  // only after the object has changed since the last request.
  6177  func (c *AppsLocationsGetCall) IfNoneMatch(entityTag string) *AppsLocationsGetCall {
  6178  	c.ifNoneMatch_ = entityTag
  6179  	return c
  6180  }
  6181  
  6182  // Context sets the context to be used in this call's Do method.
  6183  func (c *AppsLocationsGetCall) Context(ctx context.Context) *AppsLocationsGetCall {
  6184  	c.ctx_ = ctx
  6185  	return c
  6186  }
  6187  
  6188  // Header returns a http.Header that can be modified by the caller to add
  6189  // headers to the request.
  6190  func (c *AppsLocationsGetCall) Header() http.Header {
  6191  	if c.header_ == nil {
  6192  		c.header_ = make(http.Header)
  6193  	}
  6194  	return c.header_
  6195  }
  6196  
  6197  func (c *AppsLocationsGetCall) doRequest(alt string) (*http.Response, error) {
  6198  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6199  	if c.ifNoneMatch_ != "" {
  6200  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6201  	}
  6202  	var body io.Reader = nil
  6203  	c.urlParams_.Set("alt", alt)
  6204  	c.urlParams_.Set("prettyPrint", "false")
  6205  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/locations/{locationsId}")
  6206  	urls += "?" + c.urlParams_.Encode()
  6207  	req, err := http.NewRequest("GET", urls, body)
  6208  	if err != nil {
  6209  		return nil, err
  6210  	}
  6211  	req.Header = reqHeaders
  6212  	googleapi.Expand(req.URL, map[string]string{
  6213  		"appsId":      c.appsId,
  6214  		"locationsId": c.locationsId,
  6215  	})
  6216  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6217  }
  6218  
  6219  // Do executes the "appengine.apps.locations.get" call.
  6220  // Any non-2xx status code is an error. Response headers are in either
  6221  // *Location.ServerResponse.Header or (if a response was returned at all) in
  6222  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6223  // whether the returned error was because http.StatusNotModified was returned.
  6224  func (c *AppsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, error) {
  6225  	gensupport.SetOptions(c.urlParams_, opts...)
  6226  	res, err := c.doRequest("json")
  6227  	if res != nil && res.StatusCode == http.StatusNotModified {
  6228  		if res.Body != nil {
  6229  			res.Body.Close()
  6230  		}
  6231  		return nil, gensupport.WrapError(&googleapi.Error{
  6232  			Code:   res.StatusCode,
  6233  			Header: res.Header,
  6234  		})
  6235  	}
  6236  	if err != nil {
  6237  		return nil, err
  6238  	}
  6239  	defer googleapi.CloseBody(res)
  6240  	if err := googleapi.CheckResponse(res); err != nil {
  6241  		return nil, gensupport.WrapError(err)
  6242  	}
  6243  	ret := &Location{
  6244  		ServerResponse: googleapi.ServerResponse{
  6245  			Header:         res.Header,
  6246  			HTTPStatusCode: res.StatusCode,
  6247  		},
  6248  	}
  6249  	target := &ret
  6250  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6251  		return nil, err
  6252  	}
  6253  	return ret, nil
  6254  }
  6255  
  6256  type AppsLocationsListCall struct {
  6257  	s            *APIService
  6258  	appsId       string
  6259  	urlParams_   gensupport.URLParams
  6260  	ifNoneMatch_ string
  6261  	ctx_         context.Context
  6262  	header_      http.Header
  6263  }
  6264  
  6265  // List: Lists information about the supported locations for this service.
  6266  //
  6267  //   - appsId: Part of `name`. The resource that owns the locations collection,
  6268  //     if applicable.
  6269  func (r *AppsLocationsService) List(appsId string) *AppsLocationsListCall {
  6270  	c := &AppsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6271  	c.appsId = appsId
  6272  	return c
  6273  }
  6274  
  6275  // Filter sets the optional parameter "filter": A filter to narrow down results
  6276  // to a preferred subset. The filtering language accepts strings like
  6277  // "displayName=tokyo", and is documented in more detail in AIP-160
  6278  // (https://google.aip.dev/160).
  6279  func (c *AppsLocationsListCall) Filter(filter string) *AppsLocationsListCall {
  6280  	c.urlParams_.Set("filter", filter)
  6281  	return c
  6282  }
  6283  
  6284  // PageSize sets the optional parameter "pageSize": The maximum number of
  6285  // results to return. If not set, the service selects a default.
  6286  func (c *AppsLocationsListCall) PageSize(pageSize int64) *AppsLocationsListCall {
  6287  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6288  	return c
  6289  }
  6290  
  6291  // PageToken sets the optional parameter "pageToken": A page token received
  6292  // from the next_page_token field in the response. Send that page token to
  6293  // receive the subsequent page.
  6294  func (c *AppsLocationsListCall) PageToken(pageToken string) *AppsLocationsListCall {
  6295  	c.urlParams_.Set("pageToken", pageToken)
  6296  	return c
  6297  }
  6298  
  6299  // Fields allows partial responses to be retrieved. See
  6300  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6301  // details.
  6302  func (c *AppsLocationsListCall) Fields(s ...googleapi.Field) *AppsLocationsListCall {
  6303  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6304  	return c
  6305  }
  6306  
  6307  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6308  // object's ETag matches the given value. This is useful for getting updates
  6309  // only after the object has changed since the last request.
  6310  func (c *AppsLocationsListCall) IfNoneMatch(entityTag string) *AppsLocationsListCall {
  6311  	c.ifNoneMatch_ = entityTag
  6312  	return c
  6313  }
  6314  
  6315  // Context sets the context to be used in this call's Do method.
  6316  func (c *AppsLocationsListCall) Context(ctx context.Context) *AppsLocationsListCall {
  6317  	c.ctx_ = ctx
  6318  	return c
  6319  }
  6320  
  6321  // Header returns a http.Header that can be modified by the caller to add
  6322  // headers to the request.
  6323  func (c *AppsLocationsListCall) Header() http.Header {
  6324  	if c.header_ == nil {
  6325  		c.header_ = make(http.Header)
  6326  	}
  6327  	return c.header_
  6328  }
  6329  
  6330  func (c *AppsLocationsListCall) doRequest(alt string) (*http.Response, error) {
  6331  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6332  	if c.ifNoneMatch_ != "" {
  6333  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6334  	}
  6335  	var body io.Reader = nil
  6336  	c.urlParams_.Set("alt", alt)
  6337  	c.urlParams_.Set("prettyPrint", "false")
  6338  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/locations")
  6339  	urls += "?" + c.urlParams_.Encode()
  6340  	req, err := http.NewRequest("GET", urls, body)
  6341  	if err != nil {
  6342  		return nil, err
  6343  	}
  6344  	req.Header = reqHeaders
  6345  	googleapi.Expand(req.URL, map[string]string{
  6346  		"appsId": c.appsId,
  6347  	})
  6348  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6349  }
  6350  
  6351  // Do executes the "appengine.apps.locations.list" call.
  6352  // Any non-2xx status code is an error. Response headers are in either
  6353  // *ListLocationsResponse.ServerResponse.Header or (if a response was returned
  6354  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6355  // check whether the returned error was because http.StatusNotModified was
  6356  // returned.
  6357  func (c *AppsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, error) {
  6358  	gensupport.SetOptions(c.urlParams_, opts...)
  6359  	res, err := c.doRequest("json")
  6360  	if res != nil && res.StatusCode == http.StatusNotModified {
  6361  		if res.Body != nil {
  6362  			res.Body.Close()
  6363  		}
  6364  		return nil, gensupport.WrapError(&googleapi.Error{
  6365  			Code:   res.StatusCode,
  6366  			Header: res.Header,
  6367  		})
  6368  	}
  6369  	if err != nil {
  6370  		return nil, err
  6371  	}
  6372  	defer googleapi.CloseBody(res)
  6373  	if err := googleapi.CheckResponse(res); err != nil {
  6374  		return nil, gensupport.WrapError(err)
  6375  	}
  6376  	ret := &ListLocationsResponse{
  6377  		ServerResponse: googleapi.ServerResponse{
  6378  			Header:         res.Header,
  6379  			HTTPStatusCode: res.StatusCode,
  6380  		},
  6381  	}
  6382  	target := &ret
  6383  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6384  		return nil, err
  6385  	}
  6386  	return ret, nil
  6387  }
  6388  
  6389  // Pages invokes f for each page of results.
  6390  // A non-nil error returned from f will halt the iteration.
  6391  // The provided context supersedes any context provided to the Context method.
  6392  func (c *AppsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) error) error {
  6393  	c.ctx_ = ctx
  6394  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6395  	for {
  6396  		x, err := c.Do()
  6397  		if err != nil {
  6398  			return err
  6399  		}
  6400  		if err := f(x); err != nil {
  6401  			return err
  6402  		}
  6403  		if x.NextPageToken == "" {
  6404  			return nil
  6405  		}
  6406  		c.PageToken(x.NextPageToken)
  6407  	}
  6408  }
  6409  
  6410  type AppsOperationsGetCall struct {
  6411  	s            *APIService
  6412  	appsId       string
  6413  	operationsId string
  6414  	urlParams_   gensupport.URLParams
  6415  	ifNoneMatch_ string
  6416  	ctx_         context.Context
  6417  	header_      http.Header
  6418  }
  6419  
  6420  // Get: Gets the latest state of a long-running operation. Clients can use this
  6421  // method to poll the operation result at intervals as recommended by the API
  6422  // service.
  6423  //
  6424  // - appsId: Part of `name`. The name of the operation resource.
  6425  // - operationsId: Part of `name`. See documentation of `appsId`.
  6426  func (r *AppsOperationsService) Get(appsId string, operationsId string) *AppsOperationsGetCall {
  6427  	c := &AppsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6428  	c.appsId = appsId
  6429  	c.operationsId = operationsId
  6430  	return c
  6431  }
  6432  
  6433  // Fields allows partial responses to be retrieved. See
  6434  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6435  // details.
  6436  func (c *AppsOperationsGetCall) Fields(s ...googleapi.Field) *AppsOperationsGetCall {
  6437  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6438  	return c
  6439  }
  6440  
  6441  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6442  // object's ETag matches the given value. This is useful for getting updates
  6443  // only after the object has changed since the last request.
  6444  func (c *AppsOperationsGetCall) IfNoneMatch(entityTag string) *AppsOperationsGetCall {
  6445  	c.ifNoneMatch_ = entityTag
  6446  	return c
  6447  }
  6448  
  6449  // Context sets the context to be used in this call's Do method.
  6450  func (c *AppsOperationsGetCall) Context(ctx context.Context) *AppsOperationsGetCall {
  6451  	c.ctx_ = ctx
  6452  	return c
  6453  }
  6454  
  6455  // Header returns a http.Header that can be modified by the caller to add
  6456  // headers to the request.
  6457  func (c *AppsOperationsGetCall) Header() http.Header {
  6458  	if c.header_ == nil {
  6459  		c.header_ = make(http.Header)
  6460  	}
  6461  	return c.header_
  6462  }
  6463  
  6464  func (c *AppsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
  6465  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6466  	if c.ifNoneMatch_ != "" {
  6467  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6468  	}
  6469  	var body io.Reader = nil
  6470  	c.urlParams_.Set("alt", alt)
  6471  	c.urlParams_.Set("prettyPrint", "false")
  6472  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/operations/{operationsId}")
  6473  	urls += "?" + c.urlParams_.Encode()
  6474  	req, err := http.NewRequest("GET", urls, body)
  6475  	if err != nil {
  6476  		return nil, err
  6477  	}
  6478  	req.Header = reqHeaders
  6479  	googleapi.Expand(req.URL, map[string]string{
  6480  		"appsId":       c.appsId,
  6481  		"operationsId": c.operationsId,
  6482  	})
  6483  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6484  }
  6485  
  6486  // Do executes the "appengine.apps.operations.get" call.
  6487  // Any non-2xx status code is an error. Response headers are in either
  6488  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  6489  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6490  // whether the returned error was because http.StatusNotModified was returned.
  6491  func (c *AppsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  6492  	gensupport.SetOptions(c.urlParams_, opts...)
  6493  	res, err := c.doRequest("json")
  6494  	if res != nil && res.StatusCode == http.StatusNotModified {
  6495  		if res.Body != nil {
  6496  			res.Body.Close()
  6497  		}
  6498  		return nil, gensupport.WrapError(&googleapi.Error{
  6499  			Code:   res.StatusCode,
  6500  			Header: res.Header,
  6501  		})
  6502  	}
  6503  	if err != nil {
  6504  		return nil, err
  6505  	}
  6506  	defer googleapi.CloseBody(res)
  6507  	if err := googleapi.CheckResponse(res); err != nil {
  6508  		return nil, gensupport.WrapError(err)
  6509  	}
  6510  	ret := &Operation{
  6511  		ServerResponse: googleapi.ServerResponse{
  6512  			Header:         res.Header,
  6513  			HTTPStatusCode: res.StatusCode,
  6514  		},
  6515  	}
  6516  	target := &ret
  6517  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6518  		return nil, err
  6519  	}
  6520  	return ret, nil
  6521  }
  6522  
  6523  type AppsOperationsListCall struct {
  6524  	s            *APIService
  6525  	appsId       string
  6526  	urlParams_   gensupport.URLParams
  6527  	ifNoneMatch_ string
  6528  	ctx_         context.Context
  6529  	header_      http.Header
  6530  }
  6531  
  6532  // List: Lists operations that match the specified filter in the request. If
  6533  // the server doesn't support this method, it returns UNIMPLEMENTED.
  6534  //
  6535  // - appsId: Part of `name`. The name of the operation's parent resource.
  6536  func (r *AppsOperationsService) List(appsId string) *AppsOperationsListCall {
  6537  	c := &AppsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6538  	c.appsId = appsId
  6539  	return c
  6540  }
  6541  
  6542  // Filter sets the optional parameter "filter": The standard list filter.
  6543  func (c *AppsOperationsListCall) Filter(filter string) *AppsOperationsListCall {
  6544  	c.urlParams_.Set("filter", filter)
  6545  	return c
  6546  }
  6547  
  6548  // PageSize sets the optional parameter "pageSize": The standard list page
  6549  // size.
  6550  func (c *AppsOperationsListCall) PageSize(pageSize int64) *AppsOperationsListCall {
  6551  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6552  	return c
  6553  }
  6554  
  6555  // PageToken sets the optional parameter "pageToken": The standard list page
  6556  // token.
  6557  func (c *AppsOperationsListCall) PageToken(pageToken string) *AppsOperationsListCall {
  6558  	c.urlParams_.Set("pageToken", pageToken)
  6559  	return c
  6560  }
  6561  
  6562  // Fields allows partial responses to be retrieved. See
  6563  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6564  // details.
  6565  func (c *AppsOperationsListCall) Fields(s ...googleapi.Field) *AppsOperationsListCall {
  6566  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6567  	return c
  6568  }
  6569  
  6570  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6571  // object's ETag matches the given value. This is useful for getting updates
  6572  // only after the object has changed since the last request.
  6573  func (c *AppsOperationsListCall) IfNoneMatch(entityTag string) *AppsOperationsListCall {
  6574  	c.ifNoneMatch_ = entityTag
  6575  	return c
  6576  }
  6577  
  6578  // Context sets the context to be used in this call's Do method.
  6579  func (c *AppsOperationsListCall) Context(ctx context.Context) *AppsOperationsListCall {
  6580  	c.ctx_ = ctx
  6581  	return c
  6582  }
  6583  
  6584  // Header returns a http.Header that can be modified by the caller to add
  6585  // headers to the request.
  6586  func (c *AppsOperationsListCall) Header() http.Header {
  6587  	if c.header_ == nil {
  6588  		c.header_ = make(http.Header)
  6589  	}
  6590  	return c.header_
  6591  }
  6592  
  6593  func (c *AppsOperationsListCall) doRequest(alt string) (*http.Response, error) {
  6594  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6595  	if c.ifNoneMatch_ != "" {
  6596  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6597  	}
  6598  	var body io.Reader = nil
  6599  	c.urlParams_.Set("alt", alt)
  6600  	c.urlParams_.Set("prettyPrint", "false")
  6601  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/operations")
  6602  	urls += "?" + c.urlParams_.Encode()
  6603  	req, err := http.NewRequest("GET", urls, body)
  6604  	if err != nil {
  6605  		return nil, err
  6606  	}
  6607  	req.Header = reqHeaders
  6608  	googleapi.Expand(req.URL, map[string]string{
  6609  		"appsId": c.appsId,
  6610  	})
  6611  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6612  }
  6613  
  6614  // Do executes the "appengine.apps.operations.list" call.
  6615  // Any non-2xx status code is an error. Response headers are in either
  6616  // *ListOperationsResponse.ServerResponse.Header or (if a response was returned
  6617  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6618  // check whether the returned error was because http.StatusNotModified was
  6619  // returned.
  6620  func (c *AppsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
  6621  	gensupport.SetOptions(c.urlParams_, opts...)
  6622  	res, err := c.doRequest("json")
  6623  	if res != nil && res.StatusCode == http.StatusNotModified {
  6624  		if res.Body != nil {
  6625  			res.Body.Close()
  6626  		}
  6627  		return nil, gensupport.WrapError(&googleapi.Error{
  6628  			Code:   res.StatusCode,
  6629  			Header: res.Header,
  6630  		})
  6631  	}
  6632  	if err != nil {
  6633  		return nil, err
  6634  	}
  6635  	defer googleapi.CloseBody(res)
  6636  	if err := googleapi.CheckResponse(res); err != nil {
  6637  		return nil, gensupport.WrapError(err)
  6638  	}
  6639  	ret := &ListOperationsResponse{
  6640  		ServerResponse: googleapi.ServerResponse{
  6641  			Header:         res.Header,
  6642  			HTTPStatusCode: res.StatusCode,
  6643  		},
  6644  	}
  6645  	target := &ret
  6646  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6647  		return nil, err
  6648  	}
  6649  	return ret, nil
  6650  }
  6651  
  6652  // Pages invokes f for each page of results.
  6653  // A non-nil error returned from f will halt the iteration.
  6654  // The provided context supersedes any context provided to the Context method.
  6655  func (c *AppsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
  6656  	c.ctx_ = ctx
  6657  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6658  	for {
  6659  		x, err := c.Do()
  6660  		if err != nil {
  6661  			return err
  6662  		}
  6663  		if err := f(x); err != nil {
  6664  			return err
  6665  		}
  6666  		if x.NextPageToken == "" {
  6667  			return nil
  6668  		}
  6669  		c.PageToken(x.NextPageToken)
  6670  	}
  6671  }
  6672  
  6673  type AppsServicesDeleteCall struct {
  6674  	s          *APIService
  6675  	appsId     string
  6676  	servicesId string
  6677  	urlParams_ gensupport.URLParams
  6678  	ctx_       context.Context
  6679  	header_    http.Header
  6680  }
  6681  
  6682  // Delete: Deletes the specified service and all enclosed versions.
  6683  //
  6684  //   - appsId: Part of `name`. Name of the resource requested. Example:
  6685  //     apps/myapp/services/default.
  6686  //   - servicesId: Part of `name`. See documentation of `appsId`.
  6687  func (r *AppsServicesService) Delete(appsId string, servicesId string) *AppsServicesDeleteCall {
  6688  	c := &AppsServicesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6689  	c.appsId = appsId
  6690  	c.servicesId = servicesId
  6691  	return c
  6692  }
  6693  
  6694  // Fields allows partial responses to be retrieved. See
  6695  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6696  // details.
  6697  func (c *AppsServicesDeleteCall) Fields(s ...googleapi.Field) *AppsServicesDeleteCall {
  6698  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6699  	return c
  6700  }
  6701  
  6702  // Context sets the context to be used in this call's Do method.
  6703  func (c *AppsServicesDeleteCall) Context(ctx context.Context) *AppsServicesDeleteCall {
  6704  	c.ctx_ = ctx
  6705  	return c
  6706  }
  6707  
  6708  // Header returns a http.Header that can be modified by the caller to add
  6709  // headers to the request.
  6710  func (c *AppsServicesDeleteCall) Header() http.Header {
  6711  	if c.header_ == nil {
  6712  		c.header_ = make(http.Header)
  6713  	}
  6714  	return c.header_
  6715  }
  6716  
  6717  func (c *AppsServicesDeleteCall) doRequest(alt string) (*http.Response, error) {
  6718  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6719  	var body io.Reader = nil
  6720  	c.urlParams_.Set("alt", alt)
  6721  	c.urlParams_.Set("prettyPrint", "false")
  6722  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}")
  6723  	urls += "?" + c.urlParams_.Encode()
  6724  	req, err := http.NewRequest("DELETE", urls, body)
  6725  	if err != nil {
  6726  		return nil, err
  6727  	}
  6728  	req.Header = reqHeaders
  6729  	googleapi.Expand(req.URL, map[string]string{
  6730  		"appsId":     c.appsId,
  6731  		"servicesId": c.servicesId,
  6732  	})
  6733  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6734  }
  6735  
  6736  // Do executes the "appengine.apps.services.delete" call.
  6737  // Any non-2xx status code is an error. Response headers are in either
  6738  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  6739  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6740  // whether the returned error was because http.StatusNotModified was returned.
  6741  func (c *AppsServicesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  6742  	gensupport.SetOptions(c.urlParams_, opts...)
  6743  	res, err := c.doRequest("json")
  6744  	if res != nil && res.StatusCode == http.StatusNotModified {
  6745  		if res.Body != nil {
  6746  			res.Body.Close()
  6747  		}
  6748  		return nil, gensupport.WrapError(&googleapi.Error{
  6749  			Code:   res.StatusCode,
  6750  			Header: res.Header,
  6751  		})
  6752  	}
  6753  	if err != nil {
  6754  		return nil, err
  6755  	}
  6756  	defer googleapi.CloseBody(res)
  6757  	if err := googleapi.CheckResponse(res); err != nil {
  6758  		return nil, gensupport.WrapError(err)
  6759  	}
  6760  	ret := &Operation{
  6761  		ServerResponse: googleapi.ServerResponse{
  6762  			Header:         res.Header,
  6763  			HTTPStatusCode: res.StatusCode,
  6764  		},
  6765  	}
  6766  	target := &ret
  6767  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6768  		return nil, err
  6769  	}
  6770  	return ret, nil
  6771  }
  6772  
  6773  type AppsServicesGetCall struct {
  6774  	s            *APIService
  6775  	appsId       string
  6776  	servicesId   string
  6777  	urlParams_   gensupport.URLParams
  6778  	ifNoneMatch_ string
  6779  	ctx_         context.Context
  6780  	header_      http.Header
  6781  }
  6782  
  6783  // Get: Gets the current configuration of the specified service.
  6784  //
  6785  //   - appsId: Part of `name`. Name of the resource requested. Example:
  6786  //     apps/myapp/services/default.
  6787  //   - servicesId: Part of `name`. See documentation of `appsId`.
  6788  func (r *AppsServicesService) Get(appsId string, servicesId string) *AppsServicesGetCall {
  6789  	c := &AppsServicesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6790  	c.appsId = appsId
  6791  	c.servicesId = servicesId
  6792  	return c
  6793  }
  6794  
  6795  // Fields allows partial responses to be retrieved. See
  6796  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6797  // details.
  6798  func (c *AppsServicesGetCall) Fields(s ...googleapi.Field) *AppsServicesGetCall {
  6799  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6800  	return c
  6801  }
  6802  
  6803  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6804  // object's ETag matches the given value. This is useful for getting updates
  6805  // only after the object has changed since the last request.
  6806  func (c *AppsServicesGetCall) IfNoneMatch(entityTag string) *AppsServicesGetCall {
  6807  	c.ifNoneMatch_ = entityTag
  6808  	return c
  6809  }
  6810  
  6811  // Context sets the context to be used in this call's Do method.
  6812  func (c *AppsServicesGetCall) Context(ctx context.Context) *AppsServicesGetCall {
  6813  	c.ctx_ = ctx
  6814  	return c
  6815  }
  6816  
  6817  // Header returns a http.Header that can be modified by the caller to add
  6818  // headers to the request.
  6819  func (c *AppsServicesGetCall) Header() http.Header {
  6820  	if c.header_ == nil {
  6821  		c.header_ = make(http.Header)
  6822  	}
  6823  	return c.header_
  6824  }
  6825  
  6826  func (c *AppsServicesGetCall) doRequest(alt string) (*http.Response, error) {
  6827  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6828  	if c.ifNoneMatch_ != "" {
  6829  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6830  	}
  6831  	var body io.Reader = nil
  6832  	c.urlParams_.Set("alt", alt)
  6833  	c.urlParams_.Set("prettyPrint", "false")
  6834  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}")
  6835  	urls += "?" + c.urlParams_.Encode()
  6836  	req, err := http.NewRequest("GET", urls, body)
  6837  	if err != nil {
  6838  		return nil, err
  6839  	}
  6840  	req.Header = reqHeaders
  6841  	googleapi.Expand(req.URL, map[string]string{
  6842  		"appsId":     c.appsId,
  6843  		"servicesId": c.servicesId,
  6844  	})
  6845  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6846  }
  6847  
  6848  // Do executes the "appengine.apps.services.get" call.
  6849  // Any non-2xx status code is an error. Response headers are in either
  6850  // *Service.ServerResponse.Header or (if a response was returned at all) in
  6851  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6852  // whether the returned error was because http.StatusNotModified was returned.
  6853  func (c *AppsServicesGetCall) Do(opts ...googleapi.CallOption) (*Service, error) {
  6854  	gensupport.SetOptions(c.urlParams_, opts...)
  6855  	res, err := c.doRequest("json")
  6856  	if res != nil && res.StatusCode == http.StatusNotModified {
  6857  		if res.Body != nil {
  6858  			res.Body.Close()
  6859  		}
  6860  		return nil, gensupport.WrapError(&googleapi.Error{
  6861  			Code:   res.StatusCode,
  6862  			Header: res.Header,
  6863  		})
  6864  	}
  6865  	if err != nil {
  6866  		return nil, err
  6867  	}
  6868  	defer googleapi.CloseBody(res)
  6869  	if err := googleapi.CheckResponse(res); err != nil {
  6870  		return nil, gensupport.WrapError(err)
  6871  	}
  6872  	ret := &Service{
  6873  		ServerResponse: googleapi.ServerResponse{
  6874  			Header:         res.Header,
  6875  			HTTPStatusCode: res.StatusCode,
  6876  		},
  6877  	}
  6878  	target := &ret
  6879  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6880  		return nil, err
  6881  	}
  6882  	return ret, nil
  6883  }
  6884  
  6885  type AppsServicesListCall struct {
  6886  	s            *APIService
  6887  	appsId       string
  6888  	urlParams_   gensupport.URLParams
  6889  	ifNoneMatch_ string
  6890  	ctx_         context.Context
  6891  	header_      http.Header
  6892  }
  6893  
  6894  // List: Lists all the services in the application.
  6895  //
  6896  //   - appsId: Part of `parent`. Name of the parent Application resource.
  6897  //     Example: apps/myapp.
  6898  func (r *AppsServicesService) List(appsId string) *AppsServicesListCall {
  6899  	c := &AppsServicesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6900  	c.appsId = appsId
  6901  	return c
  6902  }
  6903  
  6904  // PageSize sets the optional parameter "pageSize": Maximum results to return
  6905  // per page.
  6906  func (c *AppsServicesListCall) PageSize(pageSize int64) *AppsServicesListCall {
  6907  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6908  	return c
  6909  }
  6910  
  6911  // PageToken sets the optional parameter "pageToken": Continuation token for
  6912  // fetching the next page of results.
  6913  func (c *AppsServicesListCall) PageToken(pageToken string) *AppsServicesListCall {
  6914  	c.urlParams_.Set("pageToken", pageToken)
  6915  	return c
  6916  }
  6917  
  6918  // Fields allows partial responses to be retrieved. See
  6919  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6920  // details.
  6921  func (c *AppsServicesListCall) Fields(s ...googleapi.Field) *AppsServicesListCall {
  6922  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6923  	return c
  6924  }
  6925  
  6926  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6927  // object's ETag matches the given value. This is useful for getting updates
  6928  // only after the object has changed since the last request.
  6929  func (c *AppsServicesListCall) IfNoneMatch(entityTag string) *AppsServicesListCall {
  6930  	c.ifNoneMatch_ = entityTag
  6931  	return c
  6932  }
  6933  
  6934  // Context sets the context to be used in this call's Do method.
  6935  func (c *AppsServicesListCall) Context(ctx context.Context) *AppsServicesListCall {
  6936  	c.ctx_ = ctx
  6937  	return c
  6938  }
  6939  
  6940  // Header returns a http.Header that can be modified by the caller to add
  6941  // headers to the request.
  6942  func (c *AppsServicesListCall) Header() http.Header {
  6943  	if c.header_ == nil {
  6944  		c.header_ = make(http.Header)
  6945  	}
  6946  	return c.header_
  6947  }
  6948  
  6949  func (c *AppsServicesListCall) doRequest(alt string) (*http.Response, error) {
  6950  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6951  	if c.ifNoneMatch_ != "" {
  6952  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6953  	}
  6954  	var body io.Reader = nil
  6955  	c.urlParams_.Set("alt", alt)
  6956  	c.urlParams_.Set("prettyPrint", "false")
  6957  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services")
  6958  	urls += "?" + c.urlParams_.Encode()
  6959  	req, err := http.NewRequest("GET", urls, body)
  6960  	if err != nil {
  6961  		return nil, err
  6962  	}
  6963  	req.Header = reqHeaders
  6964  	googleapi.Expand(req.URL, map[string]string{
  6965  		"appsId": c.appsId,
  6966  	})
  6967  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6968  }
  6969  
  6970  // Do executes the "appengine.apps.services.list" call.
  6971  // Any non-2xx status code is an error. Response headers are in either
  6972  // *ListServicesResponse.ServerResponse.Header or (if a response was returned
  6973  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6974  // check whether the returned error was because http.StatusNotModified was
  6975  // returned.
  6976  func (c *AppsServicesListCall) Do(opts ...googleapi.CallOption) (*ListServicesResponse, error) {
  6977  	gensupport.SetOptions(c.urlParams_, opts...)
  6978  	res, err := c.doRequest("json")
  6979  	if res != nil && res.StatusCode == http.StatusNotModified {
  6980  		if res.Body != nil {
  6981  			res.Body.Close()
  6982  		}
  6983  		return nil, gensupport.WrapError(&googleapi.Error{
  6984  			Code:   res.StatusCode,
  6985  			Header: res.Header,
  6986  		})
  6987  	}
  6988  	if err != nil {
  6989  		return nil, err
  6990  	}
  6991  	defer googleapi.CloseBody(res)
  6992  	if err := googleapi.CheckResponse(res); err != nil {
  6993  		return nil, gensupport.WrapError(err)
  6994  	}
  6995  	ret := &ListServicesResponse{
  6996  		ServerResponse: googleapi.ServerResponse{
  6997  			Header:         res.Header,
  6998  			HTTPStatusCode: res.StatusCode,
  6999  		},
  7000  	}
  7001  	target := &ret
  7002  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7003  		return nil, err
  7004  	}
  7005  	return ret, nil
  7006  }
  7007  
  7008  // Pages invokes f for each page of results.
  7009  // A non-nil error returned from f will halt the iteration.
  7010  // The provided context supersedes any context provided to the Context method.
  7011  func (c *AppsServicesListCall) Pages(ctx context.Context, f func(*ListServicesResponse) error) error {
  7012  	c.ctx_ = ctx
  7013  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  7014  	for {
  7015  		x, err := c.Do()
  7016  		if err != nil {
  7017  			return err
  7018  		}
  7019  		if err := f(x); err != nil {
  7020  			return err
  7021  		}
  7022  		if x.NextPageToken == "" {
  7023  			return nil
  7024  		}
  7025  		c.PageToken(x.NextPageToken)
  7026  	}
  7027  }
  7028  
  7029  type AppsServicesPatchCall struct {
  7030  	s          *APIService
  7031  	appsId     string
  7032  	servicesId string
  7033  	service    *Service
  7034  	urlParams_ gensupport.URLParams
  7035  	ctx_       context.Context
  7036  	header_    http.Header
  7037  }
  7038  
  7039  // Patch: Updates the configuration of the specified service.
  7040  //
  7041  //   - appsId: Part of `name`. Name of the resource to update. Example:
  7042  //     apps/myapp/services/default.
  7043  //   - servicesId: Part of `name`. See documentation of `appsId`.
  7044  func (r *AppsServicesService) Patch(appsId string, servicesId string, service *Service) *AppsServicesPatchCall {
  7045  	c := &AppsServicesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7046  	c.appsId = appsId
  7047  	c.servicesId = servicesId
  7048  	c.service = service
  7049  	return c
  7050  }
  7051  
  7052  // MigrateTraffic sets the optional parameter "migrateTraffic": Set to true to
  7053  // gradually shift traffic to one or more versions that you specify. By
  7054  // default, traffic is shifted immediately. For gradual traffic migration, the
  7055  // target versions must be located within instances that are configured for
  7056  // both warmup requests
  7057  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#InboundServiceType)
  7058  // and automatic scaling
  7059  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#AutomaticScaling).
  7060  // You must specify the shardBy
  7061  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services#ShardBy)
  7062  // field in the Service resource. Gradual traffic migration is not supported in
  7063  // the App Engine flexible environment. For examples, see Migrating and
  7064  // Splitting Traffic
  7065  // (https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).
  7066  func (c *AppsServicesPatchCall) MigrateTraffic(migrateTraffic bool) *AppsServicesPatchCall {
  7067  	c.urlParams_.Set("migrateTraffic", fmt.Sprint(migrateTraffic))
  7068  	return c
  7069  }
  7070  
  7071  // UpdateMask sets the optional parameter "updateMask": Required. Standard
  7072  // field mask for the set of fields to be updated.
  7073  func (c *AppsServicesPatchCall) UpdateMask(updateMask string) *AppsServicesPatchCall {
  7074  	c.urlParams_.Set("updateMask", updateMask)
  7075  	return c
  7076  }
  7077  
  7078  // Fields allows partial responses to be retrieved. See
  7079  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7080  // details.
  7081  func (c *AppsServicesPatchCall) Fields(s ...googleapi.Field) *AppsServicesPatchCall {
  7082  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7083  	return c
  7084  }
  7085  
  7086  // Context sets the context to be used in this call's Do method.
  7087  func (c *AppsServicesPatchCall) Context(ctx context.Context) *AppsServicesPatchCall {
  7088  	c.ctx_ = ctx
  7089  	return c
  7090  }
  7091  
  7092  // Header returns a http.Header that can be modified by the caller to add
  7093  // headers to the request.
  7094  func (c *AppsServicesPatchCall) Header() http.Header {
  7095  	if c.header_ == nil {
  7096  		c.header_ = make(http.Header)
  7097  	}
  7098  	return c.header_
  7099  }
  7100  
  7101  func (c *AppsServicesPatchCall) doRequest(alt string) (*http.Response, error) {
  7102  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7103  	var body io.Reader = nil
  7104  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.service)
  7105  	if err != nil {
  7106  		return nil, err
  7107  	}
  7108  	c.urlParams_.Set("alt", alt)
  7109  	c.urlParams_.Set("prettyPrint", "false")
  7110  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}")
  7111  	urls += "?" + c.urlParams_.Encode()
  7112  	req, err := http.NewRequest("PATCH", urls, body)
  7113  	if err != nil {
  7114  		return nil, err
  7115  	}
  7116  	req.Header = reqHeaders
  7117  	googleapi.Expand(req.URL, map[string]string{
  7118  		"appsId":     c.appsId,
  7119  		"servicesId": c.servicesId,
  7120  	})
  7121  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7122  }
  7123  
  7124  // Do executes the "appengine.apps.services.patch" call.
  7125  // Any non-2xx status code is an error. Response headers are in either
  7126  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7127  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7128  // whether the returned error was because http.StatusNotModified was returned.
  7129  func (c *AppsServicesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7130  	gensupport.SetOptions(c.urlParams_, opts...)
  7131  	res, err := c.doRequest("json")
  7132  	if res != nil && res.StatusCode == http.StatusNotModified {
  7133  		if res.Body != nil {
  7134  			res.Body.Close()
  7135  		}
  7136  		return nil, gensupport.WrapError(&googleapi.Error{
  7137  			Code:   res.StatusCode,
  7138  			Header: res.Header,
  7139  		})
  7140  	}
  7141  	if err != nil {
  7142  		return nil, err
  7143  	}
  7144  	defer googleapi.CloseBody(res)
  7145  	if err := googleapi.CheckResponse(res); err != nil {
  7146  		return nil, gensupport.WrapError(err)
  7147  	}
  7148  	ret := &Operation{
  7149  		ServerResponse: googleapi.ServerResponse{
  7150  			Header:         res.Header,
  7151  			HTTPStatusCode: res.StatusCode,
  7152  		},
  7153  	}
  7154  	target := &ret
  7155  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7156  		return nil, err
  7157  	}
  7158  	return ret, nil
  7159  }
  7160  
  7161  type AppsServicesVersionsCreateCall struct {
  7162  	s          *APIService
  7163  	appsId     string
  7164  	servicesId string
  7165  	version    *Version
  7166  	urlParams_ gensupport.URLParams
  7167  	ctx_       context.Context
  7168  	header_    http.Header
  7169  }
  7170  
  7171  // Create: Deploys code and resource files to a new version.
  7172  //
  7173  //   - appsId: Part of `parent`. Name of the parent resource to create this
  7174  //     version under. Example: apps/myapp/services/default.
  7175  //   - servicesId: Part of `parent`. See documentation of `appsId`.
  7176  func (r *AppsServicesVersionsService) Create(appsId string, servicesId string, version *Version) *AppsServicesVersionsCreateCall {
  7177  	c := &AppsServicesVersionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7178  	c.appsId = appsId
  7179  	c.servicesId = servicesId
  7180  	c.version = version
  7181  	return c
  7182  }
  7183  
  7184  // Fields allows partial responses to be retrieved. See
  7185  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7186  // details.
  7187  func (c *AppsServicesVersionsCreateCall) Fields(s ...googleapi.Field) *AppsServicesVersionsCreateCall {
  7188  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7189  	return c
  7190  }
  7191  
  7192  // Context sets the context to be used in this call's Do method.
  7193  func (c *AppsServicesVersionsCreateCall) Context(ctx context.Context) *AppsServicesVersionsCreateCall {
  7194  	c.ctx_ = ctx
  7195  	return c
  7196  }
  7197  
  7198  // Header returns a http.Header that can be modified by the caller to add
  7199  // headers to the request.
  7200  func (c *AppsServicesVersionsCreateCall) Header() http.Header {
  7201  	if c.header_ == nil {
  7202  		c.header_ = make(http.Header)
  7203  	}
  7204  	return c.header_
  7205  }
  7206  
  7207  func (c *AppsServicesVersionsCreateCall) doRequest(alt string) (*http.Response, error) {
  7208  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7209  	var body io.Reader = nil
  7210  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.version)
  7211  	if err != nil {
  7212  		return nil, err
  7213  	}
  7214  	c.urlParams_.Set("alt", alt)
  7215  	c.urlParams_.Set("prettyPrint", "false")
  7216  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions")
  7217  	urls += "?" + c.urlParams_.Encode()
  7218  	req, err := http.NewRequest("POST", urls, body)
  7219  	if err != nil {
  7220  		return nil, err
  7221  	}
  7222  	req.Header = reqHeaders
  7223  	googleapi.Expand(req.URL, map[string]string{
  7224  		"appsId":     c.appsId,
  7225  		"servicesId": c.servicesId,
  7226  	})
  7227  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7228  }
  7229  
  7230  // Do executes the "appengine.apps.services.versions.create" call.
  7231  // Any non-2xx status code is an error. Response headers are in either
  7232  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7233  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7234  // whether the returned error was because http.StatusNotModified was returned.
  7235  func (c *AppsServicesVersionsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7236  	gensupport.SetOptions(c.urlParams_, opts...)
  7237  	res, err := c.doRequest("json")
  7238  	if res != nil && res.StatusCode == http.StatusNotModified {
  7239  		if res.Body != nil {
  7240  			res.Body.Close()
  7241  		}
  7242  		return nil, gensupport.WrapError(&googleapi.Error{
  7243  			Code:   res.StatusCode,
  7244  			Header: res.Header,
  7245  		})
  7246  	}
  7247  	if err != nil {
  7248  		return nil, err
  7249  	}
  7250  	defer googleapi.CloseBody(res)
  7251  	if err := googleapi.CheckResponse(res); err != nil {
  7252  		return nil, gensupport.WrapError(err)
  7253  	}
  7254  	ret := &Operation{
  7255  		ServerResponse: googleapi.ServerResponse{
  7256  			Header:         res.Header,
  7257  			HTTPStatusCode: res.StatusCode,
  7258  		},
  7259  	}
  7260  	target := &ret
  7261  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7262  		return nil, err
  7263  	}
  7264  	return ret, nil
  7265  }
  7266  
  7267  type AppsServicesVersionsDeleteCall struct {
  7268  	s          *APIService
  7269  	appsId     string
  7270  	servicesId string
  7271  	versionsId string
  7272  	urlParams_ gensupport.URLParams
  7273  	ctx_       context.Context
  7274  	header_    http.Header
  7275  }
  7276  
  7277  // Delete: Deletes an existing Version resource.
  7278  //
  7279  //   - appsId: Part of `name`. Name of the resource requested. Example:
  7280  //     apps/myapp/services/default/versions/v1.
  7281  //   - servicesId: Part of `name`. See documentation of `appsId`.
  7282  //   - versionsId: Part of `name`. See documentation of `appsId`.
  7283  func (r *AppsServicesVersionsService) Delete(appsId string, servicesId string, versionsId string) *AppsServicesVersionsDeleteCall {
  7284  	c := &AppsServicesVersionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7285  	c.appsId = appsId
  7286  	c.servicesId = servicesId
  7287  	c.versionsId = versionsId
  7288  	return c
  7289  }
  7290  
  7291  // Fields allows partial responses to be retrieved. See
  7292  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7293  // details.
  7294  func (c *AppsServicesVersionsDeleteCall) Fields(s ...googleapi.Field) *AppsServicesVersionsDeleteCall {
  7295  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7296  	return c
  7297  }
  7298  
  7299  // Context sets the context to be used in this call's Do method.
  7300  func (c *AppsServicesVersionsDeleteCall) Context(ctx context.Context) *AppsServicesVersionsDeleteCall {
  7301  	c.ctx_ = ctx
  7302  	return c
  7303  }
  7304  
  7305  // Header returns a http.Header that can be modified by the caller to add
  7306  // headers to the request.
  7307  func (c *AppsServicesVersionsDeleteCall) Header() http.Header {
  7308  	if c.header_ == nil {
  7309  		c.header_ = make(http.Header)
  7310  	}
  7311  	return c.header_
  7312  }
  7313  
  7314  func (c *AppsServicesVersionsDeleteCall) doRequest(alt string) (*http.Response, error) {
  7315  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7316  	var body io.Reader = nil
  7317  	c.urlParams_.Set("alt", alt)
  7318  	c.urlParams_.Set("prettyPrint", "false")
  7319  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}")
  7320  	urls += "?" + c.urlParams_.Encode()
  7321  	req, err := http.NewRequest("DELETE", urls, body)
  7322  	if err != nil {
  7323  		return nil, err
  7324  	}
  7325  	req.Header = reqHeaders
  7326  	googleapi.Expand(req.URL, map[string]string{
  7327  		"appsId":     c.appsId,
  7328  		"servicesId": c.servicesId,
  7329  		"versionsId": c.versionsId,
  7330  	})
  7331  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7332  }
  7333  
  7334  // Do executes the "appengine.apps.services.versions.delete" call.
  7335  // Any non-2xx status code is an error. Response headers are in either
  7336  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7337  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7338  // whether the returned error was because http.StatusNotModified was returned.
  7339  func (c *AppsServicesVersionsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7340  	gensupport.SetOptions(c.urlParams_, opts...)
  7341  	res, err := c.doRequest("json")
  7342  	if res != nil && res.StatusCode == http.StatusNotModified {
  7343  		if res.Body != nil {
  7344  			res.Body.Close()
  7345  		}
  7346  		return nil, gensupport.WrapError(&googleapi.Error{
  7347  			Code:   res.StatusCode,
  7348  			Header: res.Header,
  7349  		})
  7350  	}
  7351  	if err != nil {
  7352  		return nil, err
  7353  	}
  7354  	defer googleapi.CloseBody(res)
  7355  	if err := googleapi.CheckResponse(res); err != nil {
  7356  		return nil, gensupport.WrapError(err)
  7357  	}
  7358  	ret := &Operation{
  7359  		ServerResponse: googleapi.ServerResponse{
  7360  			Header:         res.Header,
  7361  			HTTPStatusCode: res.StatusCode,
  7362  		},
  7363  	}
  7364  	target := &ret
  7365  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7366  		return nil, err
  7367  	}
  7368  	return ret, nil
  7369  }
  7370  
  7371  type AppsServicesVersionsGetCall struct {
  7372  	s            *APIService
  7373  	appsId       string
  7374  	servicesId   string
  7375  	versionsId   string
  7376  	urlParams_   gensupport.URLParams
  7377  	ifNoneMatch_ string
  7378  	ctx_         context.Context
  7379  	header_      http.Header
  7380  }
  7381  
  7382  // Get: Gets the specified Version resource. By default, only a BASIC_VIEW will
  7383  // be returned. Specify the FULL_VIEW parameter to get the full resource.
  7384  //
  7385  //   - appsId: Part of `name`. Name of the resource requested. Example:
  7386  //     apps/myapp/services/default/versions/v1.
  7387  //   - servicesId: Part of `name`. See documentation of `appsId`.
  7388  //   - versionsId: Part of `name`. See documentation of `appsId`.
  7389  func (r *AppsServicesVersionsService) Get(appsId string, servicesId string, versionsId string) *AppsServicesVersionsGetCall {
  7390  	c := &AppsServicesVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7391  	c.appsId = appsId
  7392  	c.servicesId = servicesId
  7393  	c.versionsId = versionsId
  7394  	return c
  7395  }
  7396  
  7397  // View sets the optional parameter "view": Controls the set of fields returned
  7398  // in the Get response.
  7399  //
  7400  // Possible values:
  7401  //
  7402  //	"BASIC" - Basic version information including scaling and inbound
  7403  //
  7404  // services, but not detailed deployment information.
  7405  //
  7406  //	"FULL" - The information from BASIC, plus detailed information about the
  7407  //
  7408  // deployment. This format is required when creating resources, but is not
  7409  // returned in Get or List by default.
  7410  func (c *AppsServicesVersionsGetCall) View(view string) *AppsServicesVersionsGetCall {
  7411  	c.urlParams_.Set("view", view)
  7412  	return c
  7413  }
  7414  
  7415  // Fields allows partial responses to be retrieved. See
  7416  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7417  // details.
  7418  func (c *AppsServicesVersionsGetCall) Fields(s ...googleapi.Field) *AppsServicesVersionsGetCall {
  7419  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7420  	return c
  7421  }
  7422  
  7423  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7424  // object's ETag matches the given value. This is useful for getting updates
  7425  // only after the object has changed since the last request.
  7426  func (c *AppsServicesVersionsGetCall) IfNoneMatch(entityTag string) *AppsServicesVersionsGetCall {
  7427  	c.ifNoneMatch_ = entityTag
  7428  	return c
  7429  }
  7430  
  7431  // Context sets the context to be used in this call's Do method.
  7432  func (c *AppsServicesVersionsGetCall) Context(ctx context.Context) *AppsServicesVersionsGetCall {
  7433  	c.ctx_ = ctx
  7434  	return c
  7435  }
  7436  
  7437  // Header returns a http.Header that can be modified by the caller to add
  7438  // headers to the request.
  7439  func (c *AppsServicesVersionsGetCall) Header() http.Header {
  7440  	if c.header_ == nil {
  7441  		c.header_ = make(http.Header)
  7442  	}
  7443  	return c.header_
  7444  }
  7445  
  7446  func (c *AppsServicesVersionsGetCall) doRequest(alt string) (*http.Response, error) {
  7447  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7448  	if c.ifNoneMatch_ != "" {
  7449  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7450  	}
  7451  	var body io.Reader = nil
  7452  	c.urlParams_.Set("alt", alt)
  7453  	c.urlParams_.Set("prettyPrint", "false")
  7454  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}")
  7455  	urls += "?" + c.urlParams_.Encode()
  7456  	req, err := http.NewRequest("GET", urls, body)
  7457  	if err != nil {
  7458  		return nil, err
  7459  	}
  7460  	req.Header = reqHeaders
  7461  	googleapi.Expand(req.URL, map[string]string{
  7462  		"appsId":     c.appsId,
  7463  		"servicesId": c.servicesId,
  7464  		"versionsId": c.versionsId,
  7465  	})
  7466  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7467  }
  7468  
  7469  // Do executes the "appengine.apps.services.versions.get" call.
  7470  // Any non-2xx status code is an error. Response headers are in either
  7471  // *Version.ServerResponse.Header or (if a response was returned at all) in
  7472  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7473  // whether the returned error was because http.StatusNotModified was returned.
  7474  func (c *AppsServicesVersionsGetCall) Do(opts ...googleapi.CallOption) (*Version, error) {
  7475  	gensupport.SetOptions(c.urlParams_, opts...)
  7476  	res, err := c.doRequest("json")
  7477  	if res != nil && res.StatusCode == http.StatusNotModified {
  7478  		if res.Body != nil {
  7479  			res.Body.Close()
  7480  		}
  7481  		return nil, gensupport.WrapError(&googleapi.Error{
  7482  			Code:   res.StatusCode,
  7483  			Header: res.Header,
  7484  		})
  7485  	}
  7486  	if err != nil {
  7487  		return nil, err
  7488  	}
  7489  	defer googleapi.CloseBody(res)
  7490  	if err := googleapi.CheckResponse(res); err != nil {
  7491  		return nil, gensupport.WrapError(err)
  7492  	}
  7493  	ret := &Version{
  7494  		ServerResponse: googleapi.ServerResponse{
  7495  			Header:         res.Header,
  7496  			HTTPStatusCode: res.StatusCode,
  7497  		},
  7498  	}
  7499  	target := &ret
  7500  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7501  		return nil, err
  7502  	}
  7503  	return ret, nil
  7504  }
  7505  
  7506  type AppsServicesVersionsListCall struct {
  7507  	s            *APIService
  7508  	appsId       string
  7509  	servicesId   string
  7510  	urlParams_   gensupport.URLParams
  7511  	ifNoneMatch_ string
  7512  	ctx_         context.Context
  7513  	header_      http.Header
  7514  }
  7515  
  7516  // List: Lists the versions of a service.
  7517  //
  7518  //   - appsId: Part of `parent`. Name of the parent Service resource. Example:
  7519  //     apps/myapp/services/default.
  7520  //   - servicesId: Part of `parent`. See documentation of `appsId`.
  7521  func (r *AppsServicesVersionsService) List(appsId string, servicesId string) *AppsServicesVersionsListCall {
  7522  	c := &AppsServicesVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7523  	c.appsId = appsId
  7524  	c.servicesId = servicesId
  7525  	return c
  7526  }
  7527  
  7528  // PageSize sets the optional parameter "pageSize": Maximum results to return
  7529  // per page.
  7530  func (c *AppsServicesVersionsListCall) PageSize(pageSize int64) *AppsServicesVersionsListCall {
  7531  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  7532  	return c
  7533  }
  7534  
  7535  // PageToken sets the optional parameter "pageToken": Continuation token for
  7536  // fetching the next page of results.
  7537  func (c *AppsServicesVersionsListCall) PageToken(pageToken string) *AppsServicesVersionsListCall {
  7538  	c.urlParams_.Set("pageToken", pageToken)
  7539  	return c
  7540  }
  7541  
  7542  // View sets the optional parameter "view": Controls the set of fields returned
  7543  // in the List response.
  7544  //
  7545  // Possible values:
  7546  //
  7547  //	"BASIC" - Basic version information including scaling and inbound
  7548  //
  7549  // services, but not detailed deployment information.
  7550  //
  7551  //	"FULL" - The information from BASIC, plus detailed information about the
  7552  //
  7553  // deployment. This format is required when creating resources, but is not
  7554  // returned in Get or List by default.
  7555  func (c *AppsServicesVersionsListCall) View(view string) *AppsServicesVersionsListCall {
  7556  	c.urlParams_.Set("view", view)
  7557  	return c
  7558  }
  7559  
  7560  // Fields allows partial responses to be retrieved. See
  7561  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7562  // details.
  7563  func (c *AppsServicesVersionsListCall) Fields(s ...googleapi.Field) *AppsServicesVersionsListCall {
  7564  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7565  	return c
  7566  }
  7567  
  7568  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7569  // object's ETag matches the given value. This is useful for getting updates
  7570  // only after the object has changed since the last request.
  7571  func (c *AppsServicesVersionsListCall) IfNoneMatch(entityTag string) *AppsServicesVersionsListCall {
  7572  	c.ifNoneMatch_ = entityTag
  7573  	return c
  7574  }
  7575  
  7576  // Context sets the context to be used in this call's Do method.
  7577  func (c *AppsServicesVersionsListCall) Context(ctx context.Context) *AppsServicesVersionsListCall {
  7578  	c.ctx_ = ctx
  7579  	return c
  7580  }
  7581  
  7582  // Header returns a http.Header that can be modified by the caller to add
  7583  // headers to the request.
  7584  func (c *AppsServicesVersionsListCall) Header() http.Header {
  7585  	if c.header_ == nil {
  7586  		c.header_ = make(http.Header)
  7587  	}
  7588  	return c.header_
  7589  }
  7590  
  7591  func (c *AppsServicesVersionsListCall) doRequest(alt string) (*http.Response, error) {
  7592  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7593  	if c.ifNoneMatch_ != "" {
  7594  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7595  	}
  7596  	var body io.Reader = nil
  7597  	c.urlParams_.Set("alt", alt)
  7598  	c.urlParams_.Set("prettyPrint", "false")
  7599  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions")
  7600  	urls += "?" + c.urlParams_.Encode()
  7601  	req, err := http.NewRequest("GET", urls, body)
  7602  	if err != nil {
  7603  		return nil, err
  7604  	}
  7605  	req.Header = reqHeaders
  7606  	googleapi.Expand(req.URL, map[string]string{
  7607  		"appsId":     c.appsId,
  7608  		"servicesId": c.servicesId,
  7609  	})
  7610  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7611  }
  7612  
  7613  // Do executes the "appengine.apps.services.versions.list" call.
  7614  // Any non-2xx status code is an error. Response headers are in either
  7615  // *ListVersionsResponse.ServerResponse.Header or (if a response was returned
  7616  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  7617  // check whether the returned error was because http.StatusNotModified was
  7618  // returned.
  7619  func (c *AppsServicesVersionsListCall) Do(opts ...googleapi.CallOption) (*ListVersionsResponse, error) {
  7620  	gensupport.SetOptions(c.urlParams_, opts...)
  7621  	res, err := c.doRequest("json")
  7622  	if res != nil && res.StatusCode == http.StatusNotModified {
  7623  		if res.Body != nil {
  7624  			res.Body.Close()
  7625  		}
  7626  		return nil, gensupport.WrapError(&googleapi.Error{
  7627  			Code:   res.StatusCode,
  7628  			Header: res.Header,
  7629  		})
  7630  	}
  7631  	if err != nil {
  7632  		return nil, err
  7633  	}
  7634  	defer googleapi.CloseBody(res)
  7635  	if err := googleapi.CheckResponse(res); err != nil {
  7636  		return nil, gensupport.WrapError(err)
  7637  	}
  7638  	ret := &ListVersionsResponse{
  7639  		ServerResponse: googleapi.ServerResponse{
  7640  			Header:         res.Header,
  7641  			HTTPStatusCode: res.StatusCode,
  7642  		},
  7643  	}
  7644  	target := &ret
  7645  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7646  		return nil, err
  7647  	}
  7648  	return ret, nil
  7649  }
  7650  
  7651  // Pages invokes f for each page of results.
  7652  // A non-nil error returned from f will halt the iteration.
  7653  // The provided context supersedes any context provided to the Context method.
  7654  func (c *AppsServicesVersionsListCall) Pages(ctx context.Context, f func(*ListVersionsResponse) error) error {
  7655  	c.ctx_ = ctx
  7656  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  7657  	for {
  7658  		x, err := c.Do()
  7659  		if err != nil {
  7660  			return err
  7661  		}
  7662  		if err := f(x); err != nil {
  7663  			return err
  7664  		}
  7665  		if x.NextPageToken == "" {
  7666  			return nil
  7667  		}
  7668  		c.PageToken(x.NextPageToken)
  7669  	}
  7670  }
  7671  
  7672  type AppsServicesVersionsPatchCall struct {
  7673  	s          *APIService
  7674  	appsId     string
  7675  	servicesId string
  7676  	versionsId string
  7677  	version    *Version
  7678  	urlParams_ gensupport.URLParams
  7679  	ctx_       context.Context
  7680  	header_    http.Header
  7681  }
  7682  
  7683  // Patch: Updates the specified Version resource. You can specify the following
  7684  // fields depending on the App Engine environment and type of scaling that the
  7685  // version resource uses:Standard environment instance_class
  7686  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.instance_class)automatic
  7687  // scaling in the standard environment: automatic_scaling.min_idle_instances
  7688  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling)
  7689  // automatic_scaling.max_idle_instances
  7690  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling)
  7691  // automaticScaling.standard_scheduler_settings.max_instances
  7692  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings)
  7693  // automaticScaling.standard_scheduler_settings.min_instances
  7694  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings)
  7695  // automaticScaling.standard_scheduler_settings.target_cpu_utilization
  7696  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings)
  7697  // automaticScaling.standard_scheduler_settings.target_throughput_utilization
  7698  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#StandardSchedulerSettings)basic
  7699  // scaling or manual scaling in the standard environment: serving_status
  7700  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status)
  7701  // manual_scaling.instances
  7702  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#manualscaling)Flexible
  7703  // environment serving_status
  7704  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.serving_status)automatic
  7705  // scaling in the flexible environment: automatic_scaling.min_total_instances
  7706  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling)
  7707  // automatic_scaling.max_total_instances
  7708  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling)
  7709  // automatic_scaling.cool_down_period_sec
  7710  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling)
  7711  // automatic_scaling.cpu_utilization.target_utilization
  7712  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#Version.FIELDS.automatic_scaling)manual
  7713  // scaling in the flexible environment: manual_scaling.instances
  7714  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#manualscaling)
  7715  //
  7716  //   - appsId: Part of `name`. Name of the resource to update. Example:
  7717  //     apps/myapp/services/default/versions/1.
  7718  //   - servicesId: Part of `name`. See documentation of `appsId`.
  7719  //   - versionsId: Part of `name`. See documentation of `appsId`.
  7720  func (r *AppsServicesVersionsService) Patch(appsId string, servicesId string, versionsId string, version *Version) *AppsServicesVersionsPatchCall {
  7721  	c := &AppsServicesVersionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7722  	c.appsId = appsId
  7723  	c.servicesId = servicesId
  7724  	c.versionsId = versionsId
  7725  	c.version = version
  7726  	return c
  7727  }
  7728  
  7729  // UpdateMask sets the optional parameter "updateMask": Standard field mask for
  7730  // the set of fields to be updated.
  7731  func (c *AppsServicesVersionsPatchCall) UpdateMask(updateMask string) *AppsServicesVersionsPatchCall {
  7732  	c.urlParams_.Set("updateMask", updateMask)
  7733  	return c
  7734  }
  7735  
  7736  // Fields allows partial responses to be retrieved. See
  7737  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7738  // details.
  7739  func (c *AppsServicesVersionsPatchCall) Fields(s ...googleapi.Field) *AppsServicesVersionsPatchCall {
  7740  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7741  	return c
  7742  }
  7743  
  7744  // Context sets the context to be used in this call's Do method.
  7745  func (c *AppsServicesVersionsPatchCall) Context(ctx context.Context) *AppsServicesVersionsPatchCall {
  7746  	c.ctx_ = ctx
  7747  	return c
  7748  }
  7749  
  7750  // Header returns a http.Header that can be modified by the caller to add
  7751  // headers to the request.
  7752  func (c *AppsServicesVersionsPatchCall) Header() http.Header {
  7753  	if c.header_ == nil {
  7754  		c.header_ = make(http.Header)
  7755  	}
  7756  	return c.header_
  7757  }
  7758  
  7759  func (c *AppsServicesVersionsPatchCall) doRequest(alt string) (*http.Response, error) {
  7760  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7761  	var body io.Reader = nil
  7762  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.version)
  7763  	if err != nil {
  7764  		return nil, err
  7765  	}
  7766  	c.urlParams_.Set("alt", alt)
  7767  	c.urlParams_.Set("prettyPrint", "false")
  7768  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}")
  7769  	urls += "?" + c.urlParams_.Encode()
  7770  	req, err := http.NewRequest("PATCH", urls, body)
  7771  	if err != nil {
  7772  		return nil, err
  7773  	}
  7774  	req.Header = reqHeaders
  7775  	googleapi.Expand(req.URL, map[string]string{
  7776  		"appsId":     c.appsId,
  7777  		"servicesId": c.servicesId,
  7778  		"versionsId": c.versionsId,
  7779  	})
  7780  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7781  }
  7782  
  7783  // Do executes the "appengine.apps.services.versions.patch" call.
  7784  // Any non-2xx status code is an error. Response headers are in either
  7785  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7786  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7787  // whether the returned error was because http.StatusNotModified was returned.
  7788  func (c *AppsServicesVersionsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7789  	gensupport.SetOptions(c.urlParams_, opts...)
  7790  	res, err := c.doRequest("json")
  7791  	if res != nil && res.StatusCode == http.StatusNotModified {
  7792  		if res.Body != nil {
  7793  			res.Body.Close()
  7794  		}
  7795  		return nil, gensupport.WrapError(&googleapi.Error{
  7796  			Code:   res.StatusCode,
  7797  			Header: res.Header,
  7798  		})
  7799  	}
  7800  	if err != nil {
  7801  		return nil, err
  7802  	}
  7803  	defer googleapi.CloseBody(res)
  7804  	if err := googleapi.CheckResponse(res); err != nil {
  7805  		return nil, gensupport.WrapError(err)
  7806  	}
  7807  	ret := &Operation{
  7808  		ServerResponse: googleapi.ServerResponse{
  7809  			Header:         res.Header,
  7810  			HTTPStatusCode: res.StatusCode,
  7811  		},
  7812  	}
  7813  	target := &ret
  7814  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7815  		return nil, err
  7816  	}
  7817  	return ret, nil
  7818  }
  7819  
  7820  type AppsServicesVersionsInstancesDebugCall struct {
  7821  	s                    *APIService
  7822  	appsId               string
  7823  	servicesId           string
  7824  	versionsId           string
  7825  	instancesId          string
  7826  	debuginstancerequest *DebugInstanceRequest
  7827  	urlParams_           gensupport.URLParams
  7828  	ctx_                 context.Context
  7829  	header_              http.Header
  7830  }
  7831  
  7832  // Debug: Enables debugging on a VM instance. This allows you to use the SSH
  7833  // command to connect to the virtual machine where the instance lives. While in
  7834  // "debug mode", the instance continues to serve live traffic. You should
  7835  // delete the instance when you are done debugging and then allow the system to
  7836  // take over and determine if another instance should be started.Only
  7837  // applicable for instances in App Engine flexible environment.
  7838  //
  7839  //   - appsId: Part of `name`. Name of the resource requested. Example:
  7840  //     apps/myapp/services/default/versions/v1/instances/instance-1.
  7841  //   - instancesId: Part of `name`. See documentation of `appsId`.
  7842  //   - servicesId: Part of `name`. See documentation of `appsId`.
  7843  //   - versionsId: Part of `name`. See documentation of `appsId`.
  7844  func (r *AppsServicesVersionsInstancesService) Debug(appsId string, servicesId string, versionsId string, instancesId string, debuginstancerequest *DebugInstanceRequest) *AppsServicesVersionsInstancesDebugCall {
  7845  	c := &AppsServicesVersionsInstancesDebugCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7846  	c.appsId = appsId
  7847  	c.servicesId = servicesId
  7848  	c.versionsId = versionsId
  7849  	c.instancesId = instancesId
  7850  	c.debuginstancerequest = debuginstancerequest
  7851  	return c
  7852  }
  7853  
  7854  // Fields allows partial responses to be retrieved. See
  7855  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7856  // details.
  7857  func (c *AppsServicesVersionsInstancesDebugCall) Fields(s ...googleapi.Field) *AppsServicesVersionsInstancesDebugCall {
  7858  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7859  	return c
  7860  }
  7861  
  7862  // Context sets the context to be used in this call's Do method.
  7863  func (c *AppsServicesVersionsInstancesDebugCall) Context(ctx context.Context) *AppsServicesVersionsInstancesDebugCall {
  7864  	c.ctx_ = ctx
  7865  	return c
  7866  }
  7867  
  7868  // Header returns a http.Header that can be modified by the caller to add
  7869  // headers to the request.
  7870  func (c *AppsServicesVersionsInstancesDebugCall) Header() http.Header {
  7871  	if c.header_ == nil {
  7872  		c.header_ = make(http.Header)
  7873  	}
  7874  	return c.header_
  7875  }
  7876  
  7877  func (c *AppsServicesVersionsInstancesDebugCall) doRequest(alt string) (*http.Response, error) {
  7878  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7879  	var body io.Reader = nil
  7880  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.debuginstancerequest)
  7881  	if err != nil {
  7882  		return nil, err
  7883  	}
  7884  	c.urlParams_.Set("alt", alt)
  7885  	c.urlParams_.Set("prettyPrint", "false")
  7886  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug")
  7887  	urls += "?" + c.urlParams_.Encode()
  7888  	req, err := http.NewRequest("POST", urls, body)
  7889  	if err != nil {
  7890  		return nil, err
  7891  	}
  7892  	req.Header = reqHeaders
  7893  	googleapi.Expand(req.URL, map[string]string{
  7894  		"appsId":      c.appsId,
  7895  		"servicesId":  c.servicesId,
  7896  		"versionsId":  c.versionsId,
  7897  		"instancesId": c.instancesId,
  7898  	})
  7899  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7900  }
  7901  
  7902  // Do executes the "appengine.apps.services.versions.instances.debug" call.
  7903  // Any non-2xx status code is an error. Response headers are in either
  7904  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7905  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7906  // whether the returned error was because http.StatusNotModified was returned.
  7907  func (c *AppsServicesVersionsInstancesDebugCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7908  	gensupport.SetOptions(c.urlParams_, opts...)
  7909  	res, err := c.doRequest("json")
  7910  	if res != nil && res.StatusCode == http.StatusNotModified {
  7911  		if res.Body != nil {
  7912  			res.Body.Close()
  7913  		}
  7914  		return nil, gensupport.WrapError(&googleapi.Error{
  7915  			Code:   res.StatusCode,
  7916  			Header: res.Header,
  7917  		})
  7918  	}
  7919  	if err != nil {
  7920  		return nil, err
  7921  	}
  7922  	defer googleapi.CloseBody(res)
  7923  	if err := googleapi.CheckResponse(res); err != nil {
  7924  		return nil, gensupport.WrapError(err)
  7925  	}
  7926  	ret := &Operation{
  7927  		ServerResponse: googleapi.ServerResponse{
  7928  			Header:         res.Header,
  7929  			HTTPStatusCode: res.StatusCode,
  7930  		},
  7931  	}
  7932  	target := &ret
  7933  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7934  		return nil, err
  7935  	}
  7936  	return ret, nil
  7937  }
  7938  
  7939  type AppsServicesVersionsInstancesDeleteCall struct {
  7940  	s           *APIService
  7941  	appsId      string
  7942  	servicesId  string
  7943  	versionsId  string
  7944  	instancesId string
  7945  	urlParams_  gensupport.URLParams
  7946  	ctx_        context.Context
  7947  	header_     http.Header
  7948  }
  7949  
  7950  // Delete: Stops a running instance.The instance might be automatically
  7951  // recreated based on the scaling settings of the version. For more
  7952  // information, see "How Instances are Managed" (standard environment
  7953  // (https://cloud.google.com/appengine/docs/standard/python/how-instances-are-managed)
  7954  // | flexible environment
  7955  // (https://cloud.google.com/appengine/docs/flexible/python/how-instances-are-managed)).To
  7956  // ensure that instances are not re-created and avoid getting billed, you can
  7957  // stop all instances within the target version by changing the serving status
  7958  // of the version to STOPPED with the apps.services.versions.patch
  7959  // (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions/patch)
  7960  // method.
  7961  //
  7962  //   - appsId: Part of `name`. Name of the resource requested. Example:
  7963  //     apps/myapp/services/default/versions/v1/instances/instance-1.
  7964  //   - instancesId: Part of `name`. See documentation of `appsId`.
  7965  //   - servicesId: Part of `name`. See documentation of `appsId`.
  7966  //   - versionsId: Part of `name`. See documentation of `appsId`.
  7967  func (r *AppsServicesVersionsInstancesService) Delete(appsId string, servicesId string, versionsId string, instancesId string) *AppsServicesVersionsInstancesDeleteCall {
  7968  	c := &AppsServicesVersionsInstancesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7969  	c.appsId = appsId
  7970  	c.servicesId = servicesId
  7971  	c.versionsId = versionsId
  7972  	c.instancesId = instancesId
  7973  	return c
  7974  }
  7975  
  7976  // Fields allows partial responses to be retrieved. See
  7977  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7978  // details.
  7979  func (c *AppsServicesVersionsInstancesDeleteCall) Fields(s ...googleapi.Field) *AppsServicesVersionsInstancesDeleteCall {
  7980  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7981  	return c
  7982  }
  7983  
  7984  // Context sets the context to be used in this call's Do method.
  7985  func (c *AppsServicesVersionsInstancesDeleteCall) Context(ctx context.Context) *AppsServicesVersionsInstancesDeleteCall {
  7986  	c.ctx_ = ctx
  7987  	return c
  7988  }
  7989  
  7990  // Header returns a http.Header that can be modified by the caller to add
  7991  // headers to the request.
  7992  func (c *AppsServicesVersionsInstancesDeleteCall) Header() http.Header {
  7993  	if c.header_ == nil {
  7994  		c.header_ = make(http.Header)
  7995  	}
  7996  	return c.header_
  7997  }
  7998  
  7999  func (c *AppsServicesVersionsInstancesDeleteCall) doRequest(alt string) (*http.Response, error) {
  8000  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8001  	var body io.Reader = nil
  8002  	c.urlParams_.Set("alt", alt)
  8003  	c.urlParams_.Set("prettyPrint", "false")
  8004  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}")
  8005  	urls += "?" + c.urlParams_.Encode()
  8006  	req, err := http.NewRequest("DELETE", urls, body)
  8007  	if err != nil {
  8008  		return nil, err
  8009  	}
  8010  	req.Header = reqHeaders
  8011  	googleapi.Expand(req.URL, map[string]string{
  8012  		"appsId":      c.appsId,
  8013  		"servicesId":  c.servicesId,
  8014  		"versionsId":  c.versionsId,
  8015  		"instancesId": c.instancesId,
  8016  	})
  8017  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8018  }
  8019  
  8020  // Do executes the "appengine.apps.services.versions.instances.delete" call.
  8021  // Any non-2xx status code is an error. Response headers are in either
  8022  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8023  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8024  // whether the returned error was because http.StatusNotModified was returned.
  8025  func (c *AppsServicesVersionsInstancesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8026  	gensupport.SetOptions(c.urlParams_, opts...)
  8027  	res, err := c.doRequest("json")
  8028  	if res != nil && res.StatusCode == http.StatusNotModified {
  8029  		if res.Body != nil {
  8030  			res.Body.Close()
  8031  		}
  8032  		return nil, gensupport.WrapError(&googleapi.Error{
  8033  			Code:   res.StatusCode,
  8034  			Header: res.Header,
  8035  		})
  8036  	}
  8037  	if err != nil {
  8038  		return nil, err
  8039  	}
  8040  	defer googleapi.CloseBody(res)
  8041  	if err := googleapi.CheckResponse(res); err != nil {
  8042  		return nil, gensupport.WrapError(err)
  8043  	}
  8044  	ret := &Operation{
  8045  		ServerResponse: googleapi.ServerResponse{
  8046  			Header:         res.Header,
  8047  			HTTPStatusCode: res.StatusCode,
  8048  		},
  8049  	}
  8050  	target := &ret
  8051  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8052  		return nil, err
  8053  	}
  8054  	return ret, nil
  8055  }
  8056  
  8057  type AppsServicesVersionsInstancesGetCall struct {
  8058  	s            *APIService
  8059  	appsId       string
  8060  	servicesId   string
  8061  	versionsId   string
  8062  	instancesId  string
  8063  	urlParams_   gensupport.URLParams
  8064  	ifNoneMatch_ string
  8065  	ctx_         context.Context
  8066  	header_      http.Header
  8067  }
  8068  
  8069  // Get: Gets instance information.
  8070  //
  8071  //   - appsId: Part of `name`. Name of the resource requested. Example:
  8072  //     apps/myapp/services/default/versions/v1/instances/instance-1.
  8073  //   - instancesId: Part of `name`. See documentation of `appsId`.
  8074  //   - servicesId: Part of `name`. See documentation of `appsId`.
  8075  //   - versionsId: Part of `name`. See documentation of `appsId`.
  8076  func (r *AppsServicesVersionsInstancesService) Get(appsId string, servicesId string, versionsId string, instancesId string) *AppsServicesVersionsInstancesGetCall {
  8077  	c := &AppsServicesVersionsInstancesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8078  	c.appsId = appsId
  8079  	c.servicesId = servicesId
  8080  	c.versionsId = versionsId
  8081  	c.instancesId = instancesId
  8082  	return c
  8083  }
  8084  
  8085  // Fields allows partial responses to be retrieved. See
  8086  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8087  // details.
  8088  func (c *AppsServicesVersionsInstancesGetCall) Fields(s ...googleapi.Field) *AppsServicesVersionsInstancesGetCall {
  8089  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8090  	return c
  8091  }
  8092  
  8093  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8094  // object's ETag matches the given value. This is useful for getting updates
  8095  // only after the object has changed since the last request.
  8096  func (c *AppsServicesVersionsInstancesGetCall) IfNoneMatch(entityTag string) *AppsServicesVersionsInstancesGetCall {
  8097  	c.ifNoneMatch_ = entityTag
  8098  	return c
  8099  }
  8100  
  8101  // Context sets the context to be used in this call's Do method.
  8102  func (c *AppsServicesVersionsInstancesGetCall) Context(ctx context.Context) *AppsServicesVersionsInstancesGetCall {
  8103  	c.ctx_ = ctx
  8104  	return c
  8105  }
  8106  
  8107  // Header returns a http.Header that can be modified by the caller to add
  8108  // headers to the request.
  8109  func (c *AppsServicesVersionsInstancesGetCall) Header() http.Header {
  8110  	if c.header_ == nil {
  8111  		c.header_ = make(http.Header)
  8112  	}
  8113  	return c.header_
  8114  }
  8115  
  8116  func (c *AppsServicesVersionsInstancesGetCall) doRequest(alt string) (*http.Response, error) {
  8117  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8118  	if c.ifNoneMatch_ != "" {
  8119  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8120  	}
  8121  	var body io.Reader = nil
  8122  	c.urlParams_.Set("alt", alt)
  8123  	c.urlParams_.Set("prettyPrint", "false")
  8124  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}")
  8125  	urls += "?" + c.urlParams_.Encode()
  8126  	req, err := http.NewRequest("GET", urls, body)
  8127  	if err != nil {
  8128  		return nil, err
  8129  	}
  8130  	req.Header = reqHeaders
  8131  	googleapi.Expand(req.URL, map[string]string{
  8132  		"appsId":      c.appsId,
  8133  		"servicesId":  c.servicesId,
  8134  		"versionsId":  c.versionsId,
  8135  		"instancesId": c.instancesId,
  8136  	})
  8137  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8138  }
  8139  
  8140  // Do executes the "appengine.apps.services.versions.instances.get" call.
  8141  // Any non-2xx status code is an error. Response headers are in either
  8142  // *Instance.ServerResponse.Header or (if a response was returned at all) in
  8143  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8144  // whether the returned error was because http.StatusNotModified was returned.
  8145  func (c *AppsServicesVersionsInstancesGetCall) Do(opts ...googleapi.CallOption) (*Instance, error) {
  8146  	gensupport.SetOptions(c.urlParams_, opts...)
  8147  	res, err := c.doRequest("json")
  8148  	if res != nil && res.StatusCode == http.StatusNotModified {
  8149  		if res.Body != nil {
  8150  			res.Body.Close()
  8151  		}
  8152  		return nil, gensupport.WrapError(&googleapi.Error{
  8153  			Code:   res.StatusCode,
  8154  			Header: res.Header,
  8155  		})
  8156  	}
  8157  	if err != nil {
  8158  		return nil, err
  8159  	}
  8160  	defer googleapi.CloseBody(res)
  8161  	if err := googleapi.CheckResponse(res); err != nil {
  8162  		return nil, gensupport.WrapError(err)
  8163  	}
  8164  	ret := &Instance{
  8165  		ServerResponse: googleapi.ServerResponse{
  8166  			Header:         res.Header,
  8167  			HTTPStatusCode: res.StatusCode,
  8168  		},
  8169  	}
  8170  	target := &ret
  8171  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8172  		return nil, err
  8173  	}
  8174  	return ret, nil
  8175  }
  8176  
  8177  type AppsServicesVersionsInstancesListCall struct {
  8178  	s            *APIService
  8179  	appsId       string
  8180  	servicesId   string
  8181  	versionsId   string
  8182  	urlParams_   gensupport.URLParams
  8183  	ifNoneMatch_ string
  8184  	ctx_         context.Context
  8185  	header_      http.Header
  8186  }
  8187  
  8188  // List: Lists the instances of a version.Tip: To aggregate details about
  8189  // instances over time, see the Stackdriver Monitoring API
  8190  // (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list).
  8191  //
  8192  //   - appsId: Part of `parent`. Name of the parent Version resource. Example:
  8193  //     apps/myapp/services/default/versions/v1.
  8194  //   - servicesId: Part of `parent`. See documentation of `appsId`.
  8195  //   - versionsId: Part of `parent`. See documentation of `appsId`.
  8196  func (r *AppsServicesVersionsInstancesService) List(appsId string, servicesId string, versionsId string) *AppsServicesVersionsInstancesListCall {
  8197  	c := &AppsServicesVersionsInstancesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8198  	c.appsId = appsId
  8199  	c.servicesId = servicesId
  8200  	c.versionsId = versionsId
  8201  	return c
  8202  }
  8203  
  8204  // PageSize sets the optional parameter "pageSize": Maximum results to return
  8205  // per page.
  8206  func (c *AppsServicesVersionsInstancesListCall) PageSize(pageSize int64) *AppsServicesVersionsInstancesListCall {
  8207  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  8208  	return c
  8209  }
  8210  
  8211  // PageToken sets the optional parameter "pageToken": Continuation token for
  8212  // fetching the next page of results.
  8213  func (c *AppsServicesVersionsInstancesListCall) PageToken(pageToken string) *AppsServicesVersionsInstancesListCall {
  8214  	c.urlParams_.Set("pageToken", pageToken)
  8215  	return c
  8216  }
  8217  
  8218  // Fields allows partial responses to be retrieved. See
  8219  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8220  // details.
  8221  func (c *AppsServicesVersionsInstancesListCall) Fields(s ...googleapi.Field) *AppsServicesVersionsInstancesListCall {
  8222  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8223  	return c
  8224  }
  8225  
  8226  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8227  // object's ETag matches the given value. This is useful for getting updates
  8228  // only after the object has changed since the last request.
  8229  func (c *AppsServicesVersionsInstancesListCall) IfNoneMatch(entityTag string) *AppsServicesVersionsInstancesListCall {
  8230  	c.ifNoneMatch_ = entityTag
  8231  	return c
  8232  }
  8233  
  8234  // Context sets the context to be used in this call's Do method.
  8235  func (c *AppsServicesVersionsInstancesListCall) Context(ctx context.Context) *AppsServicesVersionsInstancesListCall {
  8236  	c.ctx_ = ctx
  8237  	return c
  8238  }
  8239  
  8240  // Header returns a http.Header that can be modified by the caller to add
  8241  // headers to the request.
  8242  func (c *AppsServicesVersionsInstancesListCall) Header() http.Header {
  8243  	if c.header_ == nil {
  8244  		c.header_ = make(http.Header)
  8245  	}
  8246  	return c.header_
  8247  }
  8248  
  8249  func (c *AppsServicesVersionsInstancesListCall) doRequest(alt string) (*http.Response, error) {
  8250  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8251  	if c.ifNoneMatch_ != "" {
  8252  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8253  	}
  8254  	var body io.Reader = nil
  8255  	c.urlParams_.Set("alt", alt)
  8256  	c.urlParams_.Set("prettyPrint", "false")
  8257  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances")
  8258  	urls += "?" + c.urlParams_.Encode()
  8259  	req, err := http.NewRequest("GET", urls, body)
  8260  	if err != nil {
  8261  		return nil, err
  8262  	}
  8263  	req.Header = reqHeaders
  8264  	googleapi.Expand(req.URL, map[string]string{
  8265  		"appsId":     c.appsId,
  8266  		"servicesId": c.servicesId,
  8267  		"versionsId": c.versionsId,
  8268  	})
  8269  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8270  }
  8271  
  8272  // Do executes the "appengine.apps.services.versions.instances.list" call.
  8273  // Any non-2xx status code is an error. Response headers are in either
  8274  // *ListInstancesResponse.ServerResponse.Header or (if a response was returned
  8275  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8276  // check whether the returned error was because http.StatusNotModified was
  8277  // returned.
  8278  func (c *AppsServicesVersionsInstancesListCall) Do(opts ...googleapi.CallOption) (*ListInstancesResponse, error) {
  8279  	gensupport.SetOptions(c.urlParams_, opts...)
  8280  	res, err := c.doRequest("json")
  8281  	if res != nil && res.StatusCode == http.StatusNotModified {
  8282  		if res.Body != nil {
  8283  			res.Body.Close()
  8284  		}
  8285  		return nil, gensupport.WrapError(&googleapi.Error{
  8286  			Code:   res.StatusCode,
  8287  			Header: res.Header,
  8288  		})
  8289  	}
  8290  	if err != nil {
  8291  		return nil, err
  8292  	}
  8293  	defer googleapi.CloseBody(res)
  8294  	if err := googleapi.CheckResponse(res); err != nil {
  8295  		return nil, gensupport.WrapError(err)
  8296  	}
  8297  	ret := &ListInstancesResponse{
  8298  		ServerResponse: googleapi.ServerResponse{
  8299  			Header:         res.Header,
  8300  			HTTPStatusCode: res.StatusCode,
  8301  		},
  8302  	}
  8303  	target := &ret
  8304  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8305  		return nil, err
  8306  	}
  8307  	return ret, nil
  8308  }
  8309  
  8310  // Pages invokes f for each page of results.
  8311  // A non-nil error returned from f will halt the iteration.
  8312  // The provided context supersedes any context provided to the Context method.
  8313  func (c *AppsServicesVersionsInstancesListCall) Pages(ctx context.Context, f func(*ListInstancesResponse) error) error {
  8314  	c.ctx_ = ctx
  8315  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  8316  	for {
  8317  		x, err := c.Do()
  8318  		if err != nil {
  8319  			return err
  8320  		}
  8321  		if err := f(x); err != nil {
  8322  			return err
  8323  		}
  8324  		if x.NextPageToken == "" {
  8325  			return nil
  8326  		}
  8327  		c.PageToken(x.NextPageToken)
  8328  	}
  8329  }
  8330  
  8331  type ProjectsLocationsApplicationsAuthorizedDomainsListCall struct {
  8332  	s              *APIService
  8333  	projectsId     string
  8334  	locationsId    string
  8335  	applicationsId string
  8336  	urlParams_     gensupport.URLParams
  8337  	ifNoneMatch_   string
  8338  	ctx_           context.Context
  8339  	header_        http.Header
  8340  }
  8341  
  8342  // List: Lists all domains the user is authorized to administer.
  8343  //
  8344  //   - applicationsId: Part of `parent`. See documentation of `projectsId`.
  8345  //   - locationsId: Part of `parent`. See documentation of `projectsId`.
  8346  //   - projectsId: Part of `parent`. Name of the parent Application resource.
  8347  //     Example: apps/myapp.
  8348  func (r *ProjectsLocationsApplicationsAuthorizedDomainsService) List(projectsId string, locationsId string, applicationsId string) *ProjectsLocationsApplicationsAuthorizedDomainsListCall {
  8349  	c := &ProjectsLocationsApplicationsAuthorizedDomainsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8350  	c.projectsId = projectsId
  8351  	c.locationsId = locationsId
  8352  	c.applicationsId = applicationsId
  8353  	return c
  8354  }
  8355  
  8356  // PageSize sets the optional parameter "pageSize": Maximum results to return
  8357  // per page.
  8358  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) PageSize(pageSize int64) *ProjectsLocationsApplicationsAuthorizedDomainsListCall {
  8359  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  8360  	return c
  8361  }
  8362  
  8363  // PageToken sets the optional parameter "pageToken": Continuation token for
  8364  // fetching the next page of results.
  8365  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) PageToken(pageToken string) *ProjectsLocationsApplicationsAuthorizedDomainsListCall {
  8366  	c.urlParams_.Set("pageToken", pageToken)
  8367  	return c
  8368  }
  8369  
  8370  // Fields allows partial responses to be retrieved. See
  8371  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8372  // details.
  8373  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsApplicationsAuthorizedDomainsListCall {
  8374  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8375  	return c
  8376  }
  8377  
  8378  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8379  // object's ETag matches the given value. This is useful for getting updates
  8380  // only after the object has changed since the last request.
  8381  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsApplicationsAuthorizedDomainsListCall {
  8382  	c.ifNoneMatch_ = entityTag
  8383  	return c
  8384  }
  8385  
  8386  // Context sets the context to be used in this call's Do method.
  8387  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) Context(ctx context.Context) *ProjectsLocationsApplicationsAuthorizedDomainsListCall {
  8388  	c.ctx_ = ctx
  8389  	return c
  8390  }
  8391  
  8392  // Header returns a http.Header that can be modified by the caller to add
  8393  // headers to the request.
  8394  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) Header() http.Header {
  8395  	if c.header_ == nil {
  8396  		c.header_ = make(http.Header)
  8397  	}
  8398  	return c.header_
  8399  }
  8400  
  8401  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) doRequest(alt string) (*http.Response, error) {
  8402  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8403  	if c.ifNoneMatch_ != "" {
  8404  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8405  	}
  8406  	var body io.Reader = nil
  8407  	c.urlParams_.Set("alt", alt)
  8408  	c.urlParams_.Set("prettyPrint", "false")
  8409  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{projectsId}/locations/{locationsId}/applications/{applicationsId}/authorizedDomains")
  8410  	urls += "?" + c.urlParams_.Encode()
  8411  	req, err := http.NewRequest("GET", urls, body)
  8412  	if err != nil {
  8413  		return nil, err
  8414  	}
  8415  	req.Header = reqHeaders
  8416  	googleapi.Expand(req.URL, map[string]string{
  8417  		"projectsId":     c.projectsId,
  8418  		"locationsId":    c.locationsId,
  8419  		"applicationsId": c.applicationsId,
  8420  	})
  8421  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8422  }
  8423  
  8424  // Do executes the "appengine.projects.locations.applications.authorizedDomains.list" call.
  8425  // Any non-2xx status code is an error. Response headers are in either
  8426  // *ListAuthorizedDomainsResponse.ServerResponse.Header or (if a response was
  8427  // returned at all) in error.(*googleapi.Error).Header. Use
  8428  // googleapi.IsNotModified to check whether the returned error was because
  8429  // http.StatusNotModified was returned.
  8430  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) Do(opts ...googleapi.CallOption) (*ListAuthorizedDomainsResponse, error) {
  8431  	gensupport.SetOptions(c.urlParams_, opts...)
  8432  	res, err := c.doRequest("json")
  8433  	if res != nil && res.StatusCode == http.StatusNotModified {
  8434  		if res.Body != nil {
  8435  			res.Body.Close()
  8436  		}
  8437  		return nil, gensupport.WrapError(&googleapi.Error{
  8438  			Code:   res.StatusCode,
  8439  			Header: res.Header,
  8440  		})
  8441  	}
  8442  	if err != nil {
  8443  		return nil, err
  8444  	}
  8445  	defer googleapi.CloseBody(res)
  8446  	if err := googleapi.CheckResponse(res); err != nil {
  8447  		return nil, gensupport.WrapError(err)
  8448  	}
  8449  	ret := &ListAuthorizedDomainsResponse{
  8450  		ServerResponse: googleapi.ServerResponse{
  8451  			Header:         res.Header,
  8452  			HTTPStatusCode: res.StatusCode,
  8453  		},
  8454  	}
  8455  	target := &ret
  8456  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8457  		return nil, err
  8458  	}
  8459  	return ret, nil
  8460  }
  8461  
  8462  // Pages invokes f for each page of results.
  8463  // A non-nil error returned from f will halt the iteration.
  8464  // The provided context supersedes any context provided to the Context method.
  8465  func (c *ProjectsLocationsApplicationsAuthorizedDomainsListCall) Pages(ctx context.Context, f func(*ListAuthorizedDomainsResponse) error) error {
  8466  	c.ctx_ = ctx
  8467  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  8468  	for {
  8469  		x, err := c.Do()
  8470  		if err != nil {
  8471  			return err
  8472  		}
  8473  		if err := f(x); err != nil {
  8474  			return err
  8475  		}
  8476  		if x.NextPageToken == "" {
  8477  			return nil
  8478  		}
  8479  		c.PageToken(x.NextPageToken)
  8480  	}
  8481  }
  8482  

View as plain text