...

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

Documentation: google.golang.org/api/identitytoolkit/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 identitytoolkit provides access to the Identity Toolkit API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/identity-platform
    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/identitytoolkit/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	identitytoolkitService, err := identitytoolkit.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  //	identitytoolkitService, err := identitytoolkit.NewService(ctx, option.WithScopes(identitytoolkit.FirebaseScope))
    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  //	identitytoolkitService, err := identitytoolkit.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  //	identitytoolkitService, err := identitytoolkit.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    54  //
    55  // See [google.golang.org/api/option.ClientOption] for details on options.
    56  package identitytoolkit // import "google.golang.org/api/identitytoolkit/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 = "identitytoolkit:v1"
    95  const apiName = "identitytoolkit"
    96  const apiVersion = "v1"
    97  const basePath = "https://identitytoolkit.googleapis.com/"
    98  const basePathTemplate = "https://identitytoolkit.UNIVERSE_DOMAIN/"
    99  const mtlsBasePath = "https://identitytoolkit.mtls.googleapis.com/"
   100  
   101  // OAuth2 scopes used by this API.
   102  const (
   103  	// See, edit, configure, and delete your Google Cloud data and see the email
   104  	// address for your Google Account.
   105  	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
   106  
   107  	// View and administer all your Firebase data and settings
   108  	FirebaseScope = "https://www.googleapis.com/auth/firebase"
   109  )
   110  
   111  // NewService creates a new Service.
   112  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
   113  	scopesOption := internaloption.WithDefaultScopes(
   114  		"https://www.googleapis.com/auth/cloud-platform",
   115  		"https://www.googleapis.com/auth/firebase",
   116  	)
   117  	// NOTE: prepend, so we don't override user-specified scopes.
   118  	opts = append([]option.ClientOption{scopesOption}, opts...)
   119  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   120  	opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
   121  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
   122  	opts = append(opts, internaloption.EnableNewAuthLibrary())
   123  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   124  	if err != nil {
   125  		return nil, err
   126  	}
   127  	s, err := New(client)
   128  	if err != nil {
   129  		return nil, err
   130  	}
   131  	if endpoint != "" {
   132  		s.BasePath = endpoint
   133  	}
   134  	return s, nil
   135  }
   136  
   137  // New creates a new Service. It uses the provided http.Client for requests.
   138  //
   139  // Deprecated: please use NewService instead.
   140  // To provide a custom HTTP client, use option.WithHTTPClient.
   141  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   142  func New(client *http.Client) (*Service, error) {
   143  	if client == nil {
   144  		return nil, errors.New("client is nil")
   145  	}
   146  	s := &Service{client: client, BasePath: basePath}
   147  	s.Accounts = NewAccountsService(s)
   148  	s.Projects = NewProjectsService(s)
   149  	s.V1 = NewV1Service(s)
   150  	return s, nil
   151  }
   152  
   153  type Service struct {
   154  	client    *http.Client
   155  	BasePath  string // API endpoint base URL
   156  	UserAgent string // optional additional User-Agent fragment
   157  
   158  	Accounts *AccountsService
   159  
   160  	Projects *ProjectsService
   161  
   162  	V1 *V1Service
   163  }
   164  
   165  func (s *Service) userAgent() string {
   166  	if s.UserAgent == "" {
   167  		return googleapi.UserAgent
   168  	}
   169  	return googleapi.UserAgent + " " + s.UserAgent
   170  }
   171  
   172  func NewAccountsService(s *Service) *AccountsService {
   173  	rs := &AccountsService{s: s}
   174  	return rs
   175  }
   176  
   177  type AccountsService struct {
   178  	s *Service
   179  }
   180  
   181  func NewProjectsService(s *Service) *ProjectsService {
   182  	rs := &ProjectsService{s: s}
   183  	rs.Accounts_ = NewProjectsAccountsService(s)
   184  	rs.Tenants = NewProjectsTenantsService(s)
   185  	return rs
   186  }
   187  
   188  type ProjectsService struct {
   189  	s *Service
   190  
   191  	Accounts_ *ProjectsAccountsService
   192  
   193  	Tenants *ProjectsTenantsService
   194  }
   195  
   196  func NewProjectsAccountsService(s *Service) *ProjectsAccountsService {
   197  	rs := &ProjectsAccountsService{s: s}
   198  	return rs
   199  }
   200  
   201  type ProjectsAccountsService struct {
   202  	s *Service
   203  }
   204  
   205  func NewProjectsTenantsService(s *Service) *ProjectsTenantsService {
   206  	rs := &ProjectsTenantsService{s: s}
   207  	rs.Accounts_ = NewProjectsTenantsAccountsService(s)
   208  	return rs
   209  }
   210  
   211  type ProjectsTenantsService struct {
   212  	s *Service
   213  
   214  	Accounts_ *ProjectsTenantsAccountsService
   215  }
   216  
   217  func NewProjectsTenantsAccountsService(s *Service) *ProjectsTenantsAccountsService {
   218  	rs := &ProjectsTenantsAccountsService{s: s}
   219  	return rs
   220  }
   221  
   222  type ProjectsTenantsAccountsService struct {
   223  	s *Service
   224  }
   225  
   226  func NewV1Service(s *Service) *V1Service {
   227  	rs := &V1Service{s: s}
   228  	return rs
   229  }
   230  
   231  type V1Service struct {
   232  	s *Service
   233  }
   234  
   235  // GoogleCloudIdentitytoolkitV1Argon2Parameters: The parameters for Argon2
   236  // hashing algorithm.
   237  type GoogleCloudIdentitytoolkitV1Argon2Parameters struct {
   238  	// AssociatedData: The additional associated data, if provided, is appended to
   239  	// the hash value to provide an additional layer of security. A base64-encoded
   240  	// string if specified via JSON.
   241  	AssociatedData string `json:"associatedData,omitempty"`
   242  	// HashLengthBytes: Required. The desired hash length in bytes. Minimum is 4
   243  	// and maximum is 1024.
   244  	HashLengthBytes int64 `json:"hashLengthBytes,omitempty"`
   245  	// HashType: Required. Must not be HASH_TYPE_UNSPECIFIED.
   246  	//
   247  	// Possible values:
   248  	//   "HASH_TYPE_UNSPECIFIED" - The hash type is not specified.
   249  	//   "ARGON2_D" - An Argon2 variant, Argon2d.
   250  	//   "ARGON2_ID" - An Argon2 variant, Argonid. Recommended.
   251  	//   "ARGON2_I" - An Argon2 variant, Argon2i.
   252  	HashType string `json:"hashType,omitempty"`
   253  	// Iterations: Required. The number of iterations to perform. Minimum is 1,
   254  	// maximum is 16.
   255  	Iterations int64 `json:"iterations,omitempty"`
   256  	// MemoryCostKib: Required. The memory cost in kibibytes. Maximum is 32768.
   257  	MemoryCostKib int64 `json:"memoryCostKib,omitempty"`
   258  	// Parallelism: Required. The degree of parallelism, also called threads or
   259  	// lanes. Minimum is 1, maximum is 16.
   260  	Parallelism int64 `json:"parallelism,omitempty"`
   261  	// Version: The version of the Argon2 algorithm. This defaults to VERSION_13 if
   262  	// not specified.
   263  	//
   264  	// Possible values:
   265  	//   "VERSION_UNSPECIFIED" - The version is not specified.
   266  	//   "VERSION_10" - The previous version, 0x10.
   267  	//   "VERSION_13" - The current version, 0x13. The default value for version.
   268  	Version string `json:"version,omitempty"`
   269  	// ForceSendFields is a list of field names (e.g. "AssociatedData") to
   270  	// unconditionally include in API requests. By default, fields with empty or
   271  	// default values are omitted from API requests. See
   272  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   273  	// details.
   274  	ForceSendFields []string `json:"-"`
   275  	// NullFields is a list of field names (e.g. "AssociatedData") to include in
   276  	// API requests with the JSON null value. By default, fields with empty values
   277  	// are omitted from API requests. See
   278  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   279  	NullFields []string `json:"-"`
   280  }
   281  
   282  func (s *GoogleCloudIdentitytoolkitV1Argon2Parameters) MarshalJSON() ([]byte, error) {
   283  	type NoMethod GoogleCloudIdentitytoolkitV1Argon2Parameters
   284  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   285  }
   286  
   287  // GoogleCloudIdentitytoolkitV1AutoRetrievalInfo: The information required to
   288  // auto-retrieve an SMS.
   289  type GoogleCloudIdentitytoolkitV1AutoRetrievalInfo struct {
   290  	// AppSignatureHash: The Android app's signature hash for Google Play Service's
   291  	// SMS Retriever API.
   292  	AppSignatureHash string `json:"appSignatureHash,omitempty"`
   293  	// ForceSendFields is a list of field names (e.g. "AppSignatureHash") to
   294  	// unconditionally include in API requests. By default, fields with empty or
   295  	// default values are omitted from API requests. See
   296  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   297  	// details.
   298  	ForceSendFields []string `json:"-"`
   299  	// NullFields is a list of field names (e.g. "AppSignatureHash") to include in
   300  	// API requests with the JSON null value. By default, fields with empty values
   301  	// are omitted from API requests. See
   302  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   303  	NullFields []string `json:"-"`
   304  }
   305  
   306  func (s *GoogleCloudIdentitytoolkitV1AutoRetrievalInfo) MarshalJSON() ([]byte, error) {
   307  	type NoMethod GoogleCloudIdentitytoolkitV1AutoRetrievalInfo
   308  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   309  }
   310  
   311  // GoogleCloudIdentitytoolkitV1BatchDeleteAccountsRequest: Request message for
   312  // BatchDeleteAccounts.
   313  type GoogleCloudIdentitytoolkitV1BatchDeleteAccountsRequest struct {
   314  	// Force: Whether to force deleting accounts that are not in disabled state. If
   315  	// false, only disabled accounts will be deleted, and accounts that are not
   316  	// disabled will be added to the `errors`.
   317  	Force bool `json:"force,omitempty"`
   318  	// LocalIds: Required. List of user IDs to be deleted.
   319  	LocalIds []string `json:"localIds,omitempty"`
   320  	// TenantId: If the accounts belong to an Identity Platform tenant, the ID of
   321  	// the tenant. If the accounts belong to a default Identity Platform project,
   322  	// the field is not needed.
   323  	TenantId string `json:"tenantId,omitempty"`
   324  	// ForceSendFields is a list of field names (e.g. "Force") to unconditionally
   325  	// include in API requests. By default, fields with empty or default values are
   326  	// omitted from API requests. See
   327  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   328  	// details.
   329  	ForceSendFields []string `json:"-"`
   330  	// NullFields is a list of field names (e.g. "Force") to include in API
   331  	// requests with the JSON null value. By default, fields with empty values are
   332  	// omitted from API requests. See
   333  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   334  	NullFields []string `json:"-"`
   335  }
   336  
   337  func (s *GoogleCloudIdentitytoolkitV1BatchDeleteAccountsRequest) MarshalJSON() ([]byte, error) {
   338  	type NoMethod GoogleCloudIdentitytoolkitV1BatchDeleteAccountsRequest
   339  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   340  }
   341  
   342  // GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse: Response message to
   343  // BatchDeleteAccounts.
   344  type GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse struct {
   345  	// Errors: Detailed error info for accounts that cannot be deleted.
   346  	Errors []*GoogleCloudIdentitytoolkitV1BatchDeleteErrorInfo `json:"errors,omitempty"`
   347  
   348  	// ServerResponse contains the HTTP response code and headers from the server.
   349  	googleapi.ServerResponse `json:"-"`
   350  	// ForceSendFields is a list of field names (e.g. "Errors") to unconditionally
   351  	// include in API requests. By default, fields with empty or default values are
   352  	// omitted from API requests. See
   353  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   354  	// details.
   355  	ForceSendFields []string `json:"-"`
   356  	// NullFields is a list of field names (e.g. "Errors") to include in API
   357  	// requests with the JSON null value. By default, fields with empty values are
   358  	// omitted from API requests. See
   359  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   360  	NullFields []string `json:"-"`
   361  }
   362  
   363  func (s *GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse) MarshalJSON() ([]byte, error) {
   364  	type NoMethod GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse
   365  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   366  }
   367  
   368  // GoogleCloudIdentitytoolkitV1BatchDeleteErrorInfo: Error info for account
   369  // failed to be deleted.
   370  type GoogleCloudIdentitytoolkitV1BatchDeleteErrorInfo struct {
   371  	// Index: The index of the errored item in the original local_ids field.
   372  	Index int64 `json:"index,omitempty"`
   373  	// LocalId: The corresponding user ID.
   374  	LocalId string `json:"localId,omitempty"`
   375  	// Message: Detailed error message.
   376  	Message string `json:"message,omitempty"`
   377  	// ForceSendFields is a list of field names (e.g. "Index") to unconditionally
   378  	// include in API requests. By default, fields with empty or default values are
   379  	// omitted from API requests. See
   380  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   381  	// details.
   382  	ForceSendFields []string `json:"-"`
   383  	// NullFields is a list of field names (e.g. "Index") to include in API
   384  	// requests with the JSON null value. By default, fields with empty values are
   385  	// omitted from API requests. See
   386  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   387  	NullFields []string `json:"-"`
   388  }
   389  
   390  func (s *GoogleCloudIdentitytoolkitV1BatchDeleteErrorInfo) MarshalJSON() ([]byte, error) {
   391  	type NoMethod GoogleCloudIdentitytoolkitV1BatchDeleteErrorInfo
   392  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   393  }
   394  
   395  // GoogleCloudIdentitytoolkitV1CreateAuthUriRequest: Request message for
   396  // CreateAuthUri.
   397  type GoogleCloudIdentitytoolkitV1CreateAuthUriRequest struct {
   398  	AppId string `json:"appId,omitempty"`
   399  	// AuthFlowType: Used for the Google provider. The type of the authentication
   400  	// flow to be used. If present, this should be `CODE_FLOW` to specify the
   401  	// authorization code flow. Otherwise, the default ID Token flow will be used.
   402  	AuthFlowType string `json:"authFlowType,omitempty"`
   403  	// Context: An opaque string used to maintain contextual information between
   404  	// the authentication request and the callback from the IdP.
   405  	Context string `json:"context,omitempty"`
   406  	// ContinueUri: A valid URL for the IdP to redirect the user back to. The URL
   407  	// cannot contain fragments or the reserved `state` query parameter.
   408  	ContinueUri string `json:"continueUri,omitempty"`
   409  	// CustomParameter: Additional customized query parameters to be added to the
   410  	// authorization URI. The following parameters are reserved and cannot be
   411  	// added: `client_id`, `response_type`, `scope`, `redirect_uri`, `state`. For
   412  	// the Microsoft provider, the Azure AD tenant to sign-in to can be specified
   413  	// in the `tenant` custom parameter.
   414  	CustomParameter map[string]string `json:"customParameter,omitempty"`
   415  	// HostedDomain: Used for the Google provider. The G Suite hosted domain of the
   416  	// user in order to restrict sign-in to users at that domain.
   417  	HostedDomain string `json:"hostedDomain,omitempty"`
   418  	// Identifier: The email identifier of the user account to fetch associated
   419  	// providers for. At least one of the fields `identifier` and `provider_id`
   420  	// must be set. The length of the email address should be less than 256
   421  	// characters and in the format of `name@domain.tld`. The email address should
   422  	// also match the RFC 822 (https://tools.ietf.org/html/rfc822) addr-spec
   423  	// production.
   424  	Identifier       string `json:"identifier,omitempty"`
   425  	OauthConsumerKey string `json:"oauthConsumerKey,omitempty"`
   426  	// OauthScope: Additional space-delimited OAuth 2.0 scopes specifying the scope
   427  	// of the authentication request with the IdP. Used for OAuth 2.0 IdPs. For the
   428  	// Google provider, the authorization code flow will be used if this field is
   429  	// set.
   430  	OauthScope  string `json:"oauthScope,omitempty"`
   431  	OpenidRealm string `json:"openidRealm,omitempty"`
   432  	OtaApp      string `json:"otaApp,omitempty"`
   433  	// ProviderId: The provider ID of the IdP for the user to sign in with. This
   434  	// should be a provider ID enabled for sign-in, which is either from the list
   435  	// of default supported IdPs
   436  	// (https://cloud.google.com/identity-platform/docs/reference/rest/v2/defaultSupportedIdps/list),
   437  	// or of the format `oidc.*` or `saml.*`. Some examples are `google.com`,
   438  	// `facebook.com`, `oidc.testapp`, and `saml.testapp`. At least one of the
   439  	// fields `identifier` and `provider_id` must be set.
   440  	ProviderId string `json:"providerId,omitempty"`
   441  	// SessionId: A session ID that can be verified against in SignInWithIdp to
   442  	// prevent session fixation attacks. If absent, a random string will be
   443  	// generated and returned as the session ID.
   444  	SessionId string `json:"sessionId,omitempty"`
   445  	// TenantId: The ID of the Identity Platform tenant to create an authorization
   446  	// URI or lookup an email identifier for. If not set, the operation will be
   447  	// performed in the default Identity Platform instance in the project.
   448  	TenantId string `json:"tenantId,omitempty"`
   449  	// ForceSendFields is a list of field names (e.g. "AppId") to unconditionally
   450  	// include in API requests. By default, fields with empty or default values are
   451  	// omitted from API requests. See
   452  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   453  	// details.
   454  	ForceSendFields []string `json:"-"`
   455  	// NullFields is a list of field names (e.g. "AppId") to include in API
   456  	// requests with the JSON null value. By default, fields with empty values are
   457  	// omitted from API requests. See
   458  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   459  	NullFields []string `json:"-"`
   460  }
   461  
   462  func (s *GoogleCloudIdentitytoolkitV1CreateAuthUriRequest) MarshalJSON() ([]byte, error) {
   463  	type NoMethod GoogleCloudIdentitytoolkitV1CreateAuthUriRequest
   464  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   465  }
   466  
   467  // GoogleCloudIdentitytoolkitV1CreateAuthUriResponse: Response message for
   468  // CreateAuthUri.
   469  type GoogleCloudIdentitytoolkitV1CreateAuthUriResponse struct {
   470  	AllProviders []string `json:"allProviders,omitempty"`
   471  	// AuthUri: The authorization URI for the requested provider. Present only when
   472  	// a provider ID is set in the request.
   473  	AuthUri string `json:"authUri,omitempty"`
   474  	// CaptchaRequired: Whether a CAPTCHA is needed because there have been too
   475  	// many failed login attempts by the user. Present only when a registered email
   476  	// identifier is set in the request.
   477  	CaptchaRequired bool `json:"captchaRequired,omitempty"`
   478  	// ForExistingProvider: Whether the user has previously signed in with the
   479  	// provider ID in the request. Present only when a registered email identifier
   480  	// is set in the request.
   481  	ForExistingProvider bool   `json:"forExistingProvider,omitempty"`
   482  	Kind                string `json:"kind,omitempty"`
   483  	// ProviderId: The provider ID from the request, if provided.
   484  	ProviderId string `json:"providerId,omitempty"`
   485  	// Registered: Whether the email identifier represents an existing account.
   486  	// Present only when an email identifier is set in the request.
   487  	Registered bool `json:"registered,omitempty"`
   488  	// SessionId: The session ID from the request, or a random string generated by
   489  	// CreateAuthUri if absent. It is used to prevent session fixation attacks.
   490  	SessionId string `json:"sessionId,omitempty"`
   491  	// SigninMethods: The list of sign-in methods that the user has previously
   492  	// used. Each element is one of `password`, `emailLink`, or the provider ID of
   493  	// an IdP. Present only when a registered email identifier is set in the
   494  	// request. If email enumeration protection
   495  	// (https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection)
   496  	// is enabled, this method returns an empty list.
   497  	SigninMethods []string `json:"signinMethods,omitempty"`
   498  
   499  	// ServerResponse contains the HTTP response code and headers from the server.
   500  	googleapi.ServerResponse `json:"-"`
   501  	// ForceSendFields is a list of field names (e.g. "AllProviders") to
   502  	// unconditionally include in API requests. By default, fields with empty or
   503  	// default values are omitted from API requests. See
   504  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   505  	// details.
   506  	ForceSendFields []string `json:"-"`
   507  	// NullFields is a list of field names (e.g. "AllProviders") to include in API
   508  	// requests with the JSON null value. By default, fields with empty values are
   509  	// omitted from API requests. See
   510  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   511  	NullFields []string `json:"-"`
   512  }
   513  
   514  func (s *GoogleCloudIdentitytoolkitV1CreateAuthUriResponse) MarshalJSON() ([]byte, error) {
   515  	type NoMethod GoogleCloudIdentitytoolkitV1CreateAuthUriResponse
   516  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   517  }
   518  
   519  // GoogleCloudIdentitytoolkitV1CreateSessionCookieRequest: Request message for
   520  // CreateSessionCookie.
   521  type GoogleCloudIdentitytoolkitV1CreateSessionCookieRequest struct {
   522  	// IdToken: Required. A valid Identity Platform ID token.
   523  	IdToken string `json:"idToken,omitempty"`
   524  	// TenantId: The tenant ID of the Identity Platform tenant the account belongs
   525  	// to.
   526  	TenantId string `json:"tenantId,omitempty"`
   527  	// ValidDuration: The number of seconds until the session cookie expires.
   528  	// Specify a duration in seconds, between five minutes and fourteen days,
   529  	// inclusively.
   530  	ValidDuration int64 `json:"validDuration,omitempty,string"`
   531  	// ForceSendFields is a list of field names (e.g. "IdToken") to unconditionally
   532  	// include in API requests. By default, fields with empty or default values are
   533  	// omitted from API requests. See
   534  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   535  	// details.
   536  	ForceSendFields []string `json:"-"`
   537  	// NullFields is a list of field names (e.g. "IdToken") to include in API
   538  	// requests with the JSON null value. By default, fields with empty values are
   539  	// omitted from API requests. See
   540  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   541  	NullFields []string `json:"-"`
   542  }
   543  
   544  func (s *GoogleCloudIdentitytoolkitV1CreateSessionCookieRequest) MarshalJSON() ([]byte, error) {
   545  	type NoMethod GoogleCloudIdentitytoolkitV1CreateSessionCookieRequest
   546  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   547  }
   548  
   549  // GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse: Response message
   550  // for CreateSessionCookie.
   551  type GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse struct {
   552  	// SessionCookie: The session cookie that has been created from the Identity
   553  	// Platform ID token specified in the request. It is in the form of a JSON Web
   554  	// Token (JWT). Always present.
   555  	SessionCookie string `json:"sessionCookie,omitempty"`
   556  
   557  	// ServerResponse contains the HTTP response code and headers from the server.
   558  	googleapi.ServerResponse `json:"-"`
   559  	// ForceSendFields is a list of field names (e.g. "SessionCookie") to
   560  	// unconditionally include in API requests. By default, fields with empty or
   561  	// default values are omitted from API requests. See
   562  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   563  	// details.
   564  	ForceSendFields []string `json:"-"`
   565  	// NullFields is a list of field names (e.g. "SessionCookie") to include in API
   566  	// requests with the JSON null value. By default, fields with empty values are
   567  	// omitted from API requests. See
   568  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   569  	NullFields []string `json:"-"`
   570  }
   571  
   572  func (s *GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse) MarshalJSON() ([]byte, error) {
   573  	type NoMethod GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse
   574  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   575  }
   576  
   577  // GoogleCloudIdentitytoolkitV1DeleteAccountRequest: Request message for
   578  // DeleteAccount.
   579  type GoogleCloudIdentitytoolkitV1DeleteAccountRequest struct {
   580  	DelegatedProjectNumber int64 `json:"delegatedProjectNumber,omitempty,string"`
   581  	// IdToken: The Identity Platform ID token of the account to delete. Require to
   582  	// be specified for requests from end users that lack Google OAuth 2.0
   583  	// credential. Authenticated requests bearing a Google OAuth2 credential with
   584  	// proper permissions may pass local_id to specify the account to delete
   585  	// alternatively.
   586  	IdToken string `json:"idToken,omitempty"`
   587  	// LocalId: The ID of user account to delete. Specifying this field requires a
   588  	// Google OAuth 2.0 credential with proper permissions
   589  	// (https://cloud.google.com/identity-platform/docs/access-control). Requests
   590  	// from users lacking the credential should pass an ID token instead.
   591  	LocalId string `json:"localId,omitempty"`
   592  	// TargetProjectId: The ID of the project which the account belongs to. Should
   593  	// only be specified in authenticated requests that specify local_id of an
   594  	// account.
   595  	TargetProjectId string `json:"targetProjectId,omitempty"`
   596  	// TenantId: The ID of the tenant that the account belongs to, if applicable.
   597  	// Only require to be specified for authenticated requests bearing a Google
   598  	// OAuth 2.0 credential that specify local_id of an account that belongs to an
   599  	// Identity Platform tenant.
   600  	TenantId string `json:"tenantId,omitempty"`
   601  	// ForceSendFields is a list of field names (e.g. "DelegatedProjectNumber") to
   602  	// unconditionally include in API requests. By default, fields with empty or
   603  	// default values are omitted from API requests. See
   604  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   605  	// details.
   606  	ForceSendFields []string `json:"-"`
   607  	// NullFields is a list of field names (e.g. "DelegatedProjectNumber") to
   608  	// include in API requests with the JSON null value. By default, fields with
   609  	// empty values are omitted from API requests. See
   610  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   611  	NullFields []string `json:"-"`
   612  }
   613  
   614  func (s *GoogleCloudIdentitytoolkitV1DeleteAccountRequest) MarshalJSON() ([]byte, error) {
   615  	type NoMethod GoogleCloudIdentitytoolkitV1DeleteAccountRequest
   616  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   617  }
   618  
   619  // GoogleCloudIdentitytoolkitV1DeleteAccountResponse: Response message for
   620  // DeleteAccount.
   621  type GoogleCloudIdentitytoolkitV1DeleteAccountResponse struct {
   622  	Kind string `json:"kind,omitempty"`
   623  
   624  	// ServerResponse contains the HTTP response code and headers from the server.
   625  	googleapi.ServerResponse `json:"-"`
   626  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
   627  	// include in API requests. By default, fields with empty or default values are
   628  	// omitted from API requests. See
   629  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   630  	// details.
   631  	ForceSendFields []string `json:"-"`
   632  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
   633  	// with the JSON null value. By default, fields with empty values are omitted
   634  	// from API requests. See
   635  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   636  	NullFields []string `json:"-"`
   637  }
   638  
   639  func (s *GoogleCloudIdentitytoolkitV1DeleteAccountResponse) MarshalJSON() ([]byte, error) {
   640  	type NoMethod GoogleCloudIdentitytoolkitV1DeleteAccountResponse
   641  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   642  }
   643  
   644  // GoogleCloudIdentitytoolkitV1DownloadAccountResponse: Response message for
   645  // DownloadAccount.
   646  type GoogleCloudIdentitytoolkitV1DownloadAccountResponse struct {
   647  	Kind string `json:"kind,omitempty"`
   648  	// NextPageToken: If there are more accounts to be downloaded, a token that can
   649  	// be passed back to DownloadAccount to get more accounts. Otherwise, this is
   650  	// blank.
   651  	NextPageToken string `json:"nextPageToken,omitempty"`
   652  	// Users: All accounts belonging to the project/tenant limited by max_results
   653  	// in the request.
   654  	Users []*GoogleCloudIdentitytoolkitV1UserInfo `json:"users,omitempty"`
   655  
   656  	// ServerResponse contains the HTTP response code and headers from the server.
   657  	googleapi.ServerResponse `json:"-"`
   658  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
   659  	// include in API requests. By default, fields with empty or default values are
   660  	// omitted from API requests. See
   661  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   662  	// details.
   663  	ForceSendFields []string `json:"-"`
   664  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
   665  	// with the JSON null value. By default, fields with empty values are omitted
   666  	// from API requests. See
   667  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   668  	NullFields []string `json:"-"`
   669  }
   670  
   671  func (s *GoogleCloudIdentitytoolkitV1DownloadAccountResponse) MarshalJSON() ([]byte, error) {
   672  	type NoMethod GoogleCloudIdentitytoolkitV1DownloadAccountResponse
   673  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   674  }
   675  
   676  // GoogleCloudIdentitytoolkitV1EmailInfo: Information about email MFA.
   677  type GoogleCloudIdentitytoolkitV1EmailInfo struct {
   678  	// EmailAddress: Email address that a MFA verification should be sent to.
   679  	EmailAddress string `json:"emailAddress,omitempty"`
   680  	// ForceSendFields is a list of field names (e.g. "EmailAddress") to
   681  	// unconditionally include in API requests. By default, fields with empty or
   682  	// default values are omitted from API requests. See
   683  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   684  	// details.
   685  	ForceSendFields []string `json:"-"`
   686  	// NullFields is a list of field names (e.g. "EmailAddress") to include in API
   687  	// requests with the JSON null value. By default, fields with empty values are
   688  	// omitted from API requests. See
   689  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   690  	NullFields []string `json:"-"`
   691  }
   692  
   693  func (s *GoogleCloudIdentitytoolkitV1EmailInfo) MarshalJSON() ([]byte, error) {
   694  	type NoMethod GoogleCloudIdentitytoolkitV1EmailInfo
   695  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   696  }
   697  
   698  // GoogleCloudIdentitytoolkitV1EmailTemplate: Email template
   699  type GoogleCloudIdentitytoolkitV1EmailTemplate struct {
   700  	// Body: Email body
   701  	Body string `json:"body,omitempty"`
   702  	// Customized: Whether the body or subject of the email is customized.
   703  	Customized bool `json:"customized,omitempty"`
   704  	// Disabled: Whether the template is disabled. If true, a default template will
   705  	// be used.
   706  	Disabled bool `json:"disabled,omitempty"`
   707  	// Format: Email body format
   708  	//
   709  	// Possible values:
   710  	//   "EMAIL_BODY_FORMAT_UNSPECIFIED" - Default value. Do not use.
   711  	//   "PLAINTEXT" - Email body is in plain text format.
   712  	//   "HTML" - Email body is in HTML format.
   713  	Format string `json:"format,omitempty"`
   714  	// From: From address of the email
   715  	From string `json:"from,omitempty"`
   716  	// FromDisplayName: From display name
   717  	FromDisplayName string `json:"fromDisplayName,omitempty"`
   718  	// FromLocalPart: Local part of From address
   719  	FromLocalPart string `json:"fromLocalPart,omitempty"`
   720  	// Locale: Value is in III language code format (e.g. "zh-CN", "es"). Both '-'
   721  	// and '_' separators are accepted.
   722  	Locale string `json:"locale,omitempty"`
   723  	// ReplyTo: Reply-to address
   724  	ReplyTo string `json:"replyTo,omitempty"`
   725  	// Subject: Subject of the email
   726  	Subject string `json:"subject,omitempty"`
   727  	// ForceSendFields is a list of field names (e.g. "Body") to unconditionally
   728  	// include in API requests. By default, fields with empty or default values are
   729  	// omitted from API requests. See
   730  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   731  	// details.
   732  	ForceSendFields []string `json:"-"`
   733  	// NullFields is a list of field names (e.g. "Body") to include in API requests
   734  	// with the JSON null value. By default, fields with empty values are omitted
   735  	// from API requests. See
   736  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   737  	NullFields []string `json:"-"`
   738  }
   739  
   740  func (s *GoogleCloudIdentitytoolkitV1EmailTemplate) MarshalJSON() ([]byte, error) {
   741  	type NoMethod GoogleCloudIdentitytoolkitV1EmailTemplate
   742  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   743  }
   744  
   745  // GoogleCloudIdentitytoolkitV1ErrorInfo: Error information explaining why an
   746  // account cannot be uploaded. batch upload.
   747  type GoogleCloudIdentitytoolkitV1ErrorInfo struct {
   748  	// Index: The index of the item, range is [0, request.size - 1]
   749  	Index int64 `json:"index,omitempty"`
   750  	// Message: Detailed error message
   751  	Message string `json:"message,omitempty"`
   752  	// ForceSendFields is a list of field names (e.g. "Index") to unconditionally
   753  	// include in API requests. By default, fields with empty or default values are
   754  	// omitted from API requests. See
   755  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   756  	// details.
   757  	ForceSendFields []string `json:"-"`
   758  	// NullFields is a list of field names (e.g. "Index") to include in API
   759  	// requests with the JSON null value. By default, fields with empty values are
   760  	// omitted from API requests. See
   761  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   762  	NullFields []string `json:"-"`
   763  }
   764  
   765  func (s *GoogleCloudIdentitytoolkitV1ErrorInfo) MarshalJSON() ([]byte, error) {
   766  	type NoMethod GoogleCloudIdentitytoolkitV1ErrorInfo
   767  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   768  }
   769  
   770  // GoogleCloudIdentitytoolkitV1FederatedUserIdentifier: Federated user
   771  // identifier at an Identity Provider.
   772  type GoogleCloudIdentitytoolkitV1FederatedUserIdentifier struct {
   773  	// ProviderId: The ID of supported identity providers. This should be a
   774  	// provider ID enabled for sign-in, which is either from the list of default
   775  	// supported IdPs
   776  	// (https://cloud.google.com/identity-platform/docs/reference/rest/v2/defaultSupportedIdps/list),
   777  	// or of the format `oidc.*` or `saml.*`. Some examples are `google.com`,
   778  	// `facebook.com`, `oidc.testapp`, and `saml.testapp`.
   779  	ProviderId string `json:"providerId,omitempty"`
   780  	// RawId: The user ID of the account at the third-party Identity Provider
   781  	// specified by `provider_id`.
   782  	RawId string `json:"rawId,omitempty"`
   783  	// ForceSendFields is a list of field names (e.g. "ProviderId") to
   784  	// unconditionally include in API requests. By default, fields with empty or
   785  	// default values are omitted from API requests. See
   786  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   787  	// details.
   788  	ForceSendFields []string `json:"-"`
   789  	// NullFields is a list of field names (e.g. "ProviderId") to include in API
   790  	// requests with the JSON null value. By default, fields with empty values are
   791  	// omitted from API requests. See
   792  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   793  	NullFields []string `json:"-"`
   794  }
   795  
   796  func (s *GoogleCloudIdentitytoolkitV1FederatedUserIdentifier) MarshalJSON() ([]byte, error) {
   797  	type NoMethod GoogleCloudIdentitytoolkitV1FederatedUserIdentifier
   798  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   799  }
   800  
   801  // GoogleCloudIdentitytoolkitV1GetAccountInfoRequest: Request message for
   802  // GetAccountInfo.
   803  type GoogleCloudIdentitytoolkitV1GetAccountInfoRequest struct {
   804  	DelegatedProjectNumber int64 `json:"delegatedProjectNumber,omitempty,string"`
   805  	// Email: The email address of one or more accounts to fetch. The length of
   806  	// email should be less than 256 characters and in the format of
   807  	// `name@domain.tld`. The email should also match the RFC 822
   808  	// (https://tools.ietf.org/html/rfc822) addr-spec production. Should only be
   809  	// specified by authenticated requests from a developer.
   810  	Email []string `json:"email,omitempty"`
   811  	// FederatedUserId: The federated user identifier of one or more accounts to
   812  	// fetch. Should only be specified by authenticated requests bearing a Google
   813  	// OAuth 2.0 credential with proper permissions
   814  	// (https://cloud.google.com/identity-platform/docs/access-control).
   815  	FederatedUserId []*GoogleCloudIdentitytoolkitV1FederatedUserIdentifier `json:"federatedUserId,omitempty"`
   816  	// IdToken: The Identity Platform ID token of the account to fetch. Require to
   817  	// be specified for requests from end users.
   818  	IdToken string `json:"idToken,omitempty"`
   819  	// InitialEmail: The initial email of one or more accounts to fetch. The length
   820  	// of email should be less than 256 characters and in the format of
   821  	// `name@domain.tld`. The email should also match the RFC 822
   822  	// (https://tools.ietf.org/html/rfc822) addr-spec production. Should only be
   823  	// specified by authenticated requests from a developer.
   824  	InitialEmail []string `json:"initialEmail,omitempty"`
   825  	// LocalId: The ID of one or more accounts to fetch. Should only be specified
   826  	// by authenticated requests bearing a Google OAuth 2.0 credential with proper
   827  	// permissions
   828  	// (https://cloud.google.com/identity-platform/docs/access-control).
   829  	LocalId []string `json:"localId,omitempty"`
   830  	// PhoneNumber: The phone number of one or more accounts to fetch. Should only
   831  	// be specified by authenticated requests from a developer and should be in
   832  	// E.164 format, for example, +15555555555.
   833  	PhoneNumber []string `json:"phoneNumber,omitempty"`
   834  	// TargetProjectId: The ID of the Google Cloud project that the account or the
   835  	// Identity Platform tenant specified by `tenant_id` belongs to. Should only be
   836  	// specified by authenticated requests bearing a Google OAuth 2.0 credential
   837  	// with proper permissions
   838  	// (https://cloud.google.com/identity-platform/docs/access-control).
   839  	TargetProjectId string `json:"targetProjectId,omitempty"`
   840  	// TenantId: The ID of the tenant that the account belongs to. Should only be
   841  	// specified by authenticated requests from a developer.
   842  	TenantId string `json:"tenantId,omitempty"`
   843  	// ForceSendFields is a list of field names (e.g. "DelegatedProjectNumber") to
   844  	// unconditionally include in API requests. By default, fields with empty or
   845  	// default values are omitted from API requests. See
   846  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   847  	// details.
   848  	ForceSendFields []string `json:"-"`
   849  	// NullFields is a list of field names (e.g. "DelegatedProjectNumber") to
   850  	// include in API requests with the JSON null value. By default, fields with
   851  	// empty values are omitted from API requests. See
   852  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   853  	NullFields []string `json:"-"`
   854  }
   855  
   856  func (s *GoogleCloudIdentitytoolkitV1GetAccountInfoRequest) MarshalJSON() ([]byte, error) {
   857  	type NoMethod GoogleCloudIdentitytoolkitV1GetAccountInfoRequest
   858  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   859  }
   860  
   861  // GoogleCloudIdentitytoolkitV1GetAccountInfoResponse: Response message for
   862  // GetAccountInfo.
   863  type GoogleCloudIdentitytoolkitV1GetAccountInfoResponse struct {
   864  	Kind string `json:"kind,omitempty"`
   865  	// Users: The information of specific user account(s) matching the parameters
   866  	// in the request.
   867  	Users []*GoogleCloudIdentitytoolkitV1UserInfo `json:"users,omitempty"`
   868  
   869  	// ServerResponse contains the HTTP response code and headers from the server.
   870  	googleapi.ServerResponse `json:"-"`
   871  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
   872  	// include in API requests. By default, fields with empty or default values are
   873  	// omitted from API requests. See
   874  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   875  	// details.
   876  	ForceSendFields []string `json:"-"`
   877  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
   878  	// with the JSON null value. By default, fields with empty values are omitted
   879  	// from API requests. See
   880  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   881  	NullFields []string `json:"-"`
   882  }
   883  
   884  func (s *GoogleCloudIdentitytoolkitV1GetAccountInfoResponse) MarshalJSON() ([]byte, error) {
   885  	type NoMethod GoogleCloudIdentitytoolkitV1GetAccountInfoResponse
   886  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   887  }
   888  
   889  // GoogleCloudIdentitytoolkitV1GetOobCodeRequest: Request message for
   890  // GetOobCode.
   891  type GoogleCloudIdentitytoolkitV1GetOobCodeRequest struct {
   892  	// AndroidInstallApp: If an associated android app can handle the OOB code,
   893  	// whether or not to install the android app on the device where the link is
   894  	// opened if the app is not already installed.
   895  	AndroidInstallApp bool `json:"androidInstallApp,omitempty"`
   896  	// AndroidMinimumVersion: If an associated android app can handle the OOB code,
   897  	// the minimum version of the app. If the version on the device is lower than
   898  	// this version then the user is taken to Google Play Store to upgrade the app.
   899  	AndroidMinimumVersion string `json:"androidMinimumVersion,omitempty"`
   900  	// AndroidPackageName: If an associated android app can handle the OOB code,
   901  	// the Android package name of the android app that will handle the callback
   902  	// when this OOB code is used. This will allow the correct app to open if it is
   903  	// already installed, or allow Google Play Store to open to the correct app if
   904  	// it is not yet installed.
   905  	AndroidPackageName string `json:"androidPackageName,omitempty"`
   906  	// CanHandleCodeInApp: When set to true, the OOB code link will be be sent as a
   907  	// Universal Link or an Android App Link and will be opened by the
   908  	// corresponding app if installed. If not set, or set to false, the OOB code
   909  	// will be sent to the web widget first and then on continue will redirect to
   910  	// the app if installed.
   911  	CanHandleCodeInApp bool `json:"canHandleCodeInApp,omitempty"`
   912  	// CaptchaResp: For a PASSWORD_RESET request, a reCaptcha response is required
   913  	// when the system detects possible abuse activity. In those cases, this is the
   914  	// response from the reCaptcha challenge used to verify the caller.
   915  	CaptchaResp string `json:"captchaResp,omitempty"`
   916  	Challenge   string `json:"challenge,omitempty"`
   917  	// ClientType: The client type: web, Android or iOS. Required when reCAPTCHA
   918  	// Enterprise protection is enabled.
   919  	//
   920  	// Possible values:
   921  	//   "CLIENT_TYPE_UNSPECIFIED" - Client type is not specified.
   922  	//   "CLIENT_TYPE_WEB" - Client type is web.
   923  	//   "CLIENT_TYPE_ANDROID" - Client type is android.
   924  	//   "CLIENT_TYPE_IOS" - Client type is ios.
   925  	ClientType string `json:"clientType,omitempty"`
   926  	// ContinueUrl: The Url to continue after user clicks the link sent in email.
   927  	// This is the url that will allow the web widget to handle the OOB code.
   928  	ContinueUrl string `json:"continueUrl,omitempty"`
   929  	// DynamicLinkDomain: In order to ensure that the url used can be easily opened
   930  	// up in iOS or android, we create a Firebase Dynamic Link
   931  	// (https://firebase.google.com/docs/dynamic-links). Most Identity Platform
   932  	// projects will only have one Dynamic Link domain enabled, and can leave this
   933  	// field blank. This field contains a specified Dynamic Link domain for
   934  	// projects that have multiple enabled.
   935  	DynamicLinkDomain string `json:"dynamicLinkDomain,omitempty"`
   936  	// Email: The account's email address to send the OOB code to, and generally
   937  	// the email address of the account that needs to be updated. Required for
   938  	// PASSWORD_RESET, EMAIL_SIGNIN, and VERIFY_EMAIL. Only required for
   939  	// VERIFY_AND_CHANGE_EMAIL requests when return_oob_link is set to true. In
   940  	// this case, it is the original email of the user.
   941  	Email string `json:"email,omitempty"`
   942  	// IOSAppStoreId: If an associated iOS app can handle the OOB code, the App
   943  	// Store id of this app. This will allow App Store to open to the correct app
   944  	// if the app is not yet installed.
   945  	IOSAppStoreId string `json:"iOSAppStoreId,omitempty"`
   946  	// IOSBundleId: If an associated iOS app can handle the OOB code, the iOS
   947  	// bundle id of this app. This will allow the correct app to open if it is
   948  	// already installed.
   949  	IOSBundleId string `json:"iOSBundleId,omitempty"`
   950  	// IdToken: An ID token for the account. It is required for
   951  	// VERIFY_AND_CHANGE_EMAIL and VERIFY_EMAIL requests unless return_oob_link is
   952  	// set to true.
   953  	IdToken string `json:"idToken,omitempty"`
   954  	// NewEmail: The email address the account is being updated to. Required only
   955  	// for VERIFY_AND_CHANGE_EMAIL requests.
   956  	NewEmail string `json:"newEmail,omitempty"`
   957  	// RecaptchaVersion: The reCAPTCHA version of the reCAPTCHA token in the
   958  	// captcha_response.
   959  	//
   960  	// Possible values:
   961  	//   "RECAPTCHA_VERSION_UNSPECIFIED" - The reCAPTCHA version is not specified.
   962  	//   "RECAPTCHA_ENTERPRISE" - The reCAPTCHA enterprise.
   963  	RecaptchaVersion string `json:"recaptchaVersion,omitempty"`
   964  	// RequestType: Required. The type of out-of-band (OOB) code to send. Depending
   965  	// on this value, other fields in this request will be required and/or have
   966  	// different meanings. There are 4 different OOB codes that can be sent: *
   967  	// PASSWORD_RESET * EMAIL_SIGNIN * VERIFY_EMAIL * VERIFY_AND_CHANGE_EMAIL
   968  	//
   969  	// Possible values:
   970  	//   "OOB_REQ_TYPE_UNSPECIFIED" - Oob code type is not specified.
   971  	//   "PASSWORD_RESET" - reset password
   972  	//   "OLD_EMAIL_AGREE"
   973  	//   "NEW_EMAIL_ACCEPT"
   974  	//   "VERIFY_EMAIL" - verify the account's email address by sending an email
   975  	//   "RECOVER_EMAIL"
   976  	//   "EMAIL_SIGNIN" - sign in with email only
   977  	//   "VERIFY_AND_CHANGE_EMAIL" - This flow sends an email to the specified new
   978  	// email, and when applied by clicking the link in the email changes the
   979  	// account's email to the new email. Used when the account must have verified
   980  	// email at all times, such as MFA accounts.
   981  	//   "REVERT_SECOND_FACTOR_ADDITION"
   982  	RequestType string `json:"requestType,omitempty"`
   983  	// ReturnOobLink: Whether the confirmation link containing the OOB code should
   984  	// be returned in the response (no email is sent). Used when a developer wants
   985  	// to construct the email template and send it on their own. By default this is
   986  	// false; to specify this field, and to set it to true, it requires a Google
   987  	// OAuth 2.0 credential with proper permissions
   988  	// (https://cloud.google.com/identity-platform/docs/access-control)
   989  	ReturnOobLink bool `json:"returnOobLink,omitempty"`
   990  	// TargetProjectId: The Project ID of the Identity Platform project which the
   991  	// account belongs to. To specify this field, it requires a Google OAuth 2.0
   992  	// credential with proper permissions
   993  	// (https://cloud.google.com/identity-platform/docs/access-control).
   994  	TargetProjectId string `json:"targetProjectId,omitempty"`
   995  	// TenantId: The tenant ID of the Identity Platform tenant the account belongs
   996  	// to.
   997  	TenantId string `json:"tenantId,omitempty"`
   998  	// UserIp: The IP address of the caller. Required only for PASSWORD_RESET
   999  	// requests.
  1000  	UserIp string `json:"userIp,omitempty"`
  1001  	// ForceSendFields is a list of field names (e.g. "AndroidInstallApp") to
  1002  	// unconditionally include in API requests. By default, fields with empty or
  1003  	// default values are omitted from API requests. See
  1004  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1005  	// details.
  1006  	ForceSendFields []string `json:"-"`
  1007  	// NullFields is a list of field names (e.g. "AndroidInstallApp") to include in
  1008  	// API requests with the JSON null value. By default, fields with empty values
  1009  	// are omitted from API requests. See
  1010  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1011  	NullFields []string `json:"-"`
  1012  }
  1013  
  1014  func (s *GoogleCloudIdentitytoolkitV1GetOobCodeRequest) MarshalJSON() ([]byte, error) {
  1015  	type NoMethod GoogleCloudIdentitytoolkitV1GetOobCodeRequest
  1016  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1017  }
  1018  
  1019  // GoogleCloudIdentitytoolkitV1GetOobCodeResponse: Response message for
  1020  // GetOobCode.
  1021  type GoogleCloudIdentitytoolkitV1GetOobCodeResponse struct {
  1022  	// Email: If return_oob_link is false in the request, the email address the
  1023  	// verification was sent to.
  1024  	Email string `json:"email,omitempty"`
  1025  	Kind  string `json:"kind,omitempty"`
  1026  	// OobCode: If return_oob_link is true in the request, the OOB code to send.
  1027  	OobCode string `json:"oobCode,omitempty"`
  1028  	// OobLink: If return_oob_link is true in the request, the OOB link to be sent
  1029  	// to the user. This returns the constructed link including Firebase Dynamic
  1030  	// Link (https://firebase.google.com/docs/dynamic-links) related parameters.
  1031  	OobLink string `json:"oobLink,omitempty"`
  1032  
  1033  	// ServerResponse contains the HTTP response code and headers from the server.
  1034  	googleapi.ServerResponse `json:"-"`
  1035  	// ForceSendFields is a list of field names (e.g. "Email") 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. "Email") to include in API
  1042  	// requests with the JSON null value. By default, fields with empty values are
  1043  	// omitted 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 *GoogleCloudIdentitytoolkitV1GetOobCodeResponse) MarshalJSON() ([]byte, error) {
  1049  	type NoMethod GoogleCloudIdentitytoolkitV1GetOobCodeResponse
  1050  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1051  }
  1052  
  1053  // GoogleCloudIdentitytoolkitV1GetProjectConfigResponse: Response message for
  1054  // GetProjectConfig.
  1055  type GoogleCloudIdentitytoolkitV1GetProjectConfigResponse struct {
  1056  	// AllowPasswordUser: Whether to allow password account sign up. This field is
  1057  	// only returned for authenticated calls from a developer.
  1058  	AllowPasswordUser bool `json:"allowPasswordUser,omitempty"`
  1059  	// ApiKey: Google Cloud API key. This field is only returned for authenticated
  1060  	// calls from a developer.
  1061  	ApiKey string `json:"apiKey,omitempty"`
  1062  	// AuthorizedDomains: Authorized domains for widget redirect.
  1063  	AuthorizedDomains []string `json:"authorizedDomains,omitempty"`
  1064  	// ChangeEmailTemplate: Email template for change email. This field is only
  1065  	// returned for authenticated calls from a developer.
  1066  	ChangeEmailTemplate *GoogleCloudIdentitytoolkitV1EmailTemplate `json:"changeEmailTemplate,omitempty"`
  1067  	// DynamicLinksDomain: The Firebase Dynamic Links domain used to construct
  1068  	// links for redirects to native apps.
  1069  	DynamicLinksDomain string `json:"dynamicLinksDomain,omitempty"`
  1070  	// EnableAnonymousUser: Whether anonymous user is enabled. This field is only
  1071  	// returned for authenticated calls from a developer.
  1072  	EnableAnonymousUser bool `json:"enableAnonymousUser,omitempty"`
  1073  	// IdpConfig: OAuth2 provider config. This field is only returned for
  1074  	// authenticated calls from a developer.
  1075  	IdpConfig []*GoogleCloudIdentitytoolkitV1IdpConfig `json:"idpConfig,omitempty"`
  1076  	// LegacyResetPasswordTemplate: Reset password email template for legacy
  1077  	// Firebase V1 app. This field is only returned for authenticated calls from a
  1078  	// developer.
  1079  	LegacyResetPasswordTemplate *GoogleCloudIdentitytoolkitV1EmailTemplate `json:"legacyResetPasswordTemplate,omitempty"`
  1080  	// ProjectId: The project id of the retrieved configuration.
  1081  	ProjectId string `json:"projectId,omitempty"`
  1082  	// ResetPasswordTemplate: Email template for reset password. This field is only
  1083  	// returned for authenticated calls from a developer.
  1084  	ResetPasswordTemplate *GoogleCloudIdentitytoolkitV1EmailTemplate `json:"resetPasswordTemplate,omitempty"`
  1085  	// RevertSecondFactorAdditionTemplate: Email template for reverting second
  1086  	// factor additions. This field is only returned for authenticated calls from a
  1087  	// developer.
  1088  	RevertSecondFactorAdditionTemplate *GoogleCloudIdentitytoolkitV1EmailTemplate `json:"revertSecondFactorAdditionTemplate,omitempty"`
  1089  	// UseEmailSending: Whether to use email sending. This field is only returned
  1090  	// for authenticated calls from a developer.
  1091  	UseEmailSending bool `json:"useEmailSending,omitempty"`
  1092  	// VerifyEmailTemplate: Email template for verify email. This field is only
  1093  	// returned for authenticated calls from a developer.
  1094  	VerifyEmailTemplate *GoogleCloudIdentitytoolkitV1EmailTemplate `json:"verifyEmailTemplate,omitempty"`
  1095  
  1096  	// ServerResponse contains the HTTP response code and headers from the server.
  1097  	googleapi.ServerResponse `json:"-"`
  1098  	// ForceSendFields is a list of field names (e.g. "AllowPasswordUser") to
  1099  	// unconditionally include in API requests. By default, fields with empty or
  1100  	// default values are omitted from API requests. See
  1101  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1102  	// details.
  1103  	ForceSendFields []string `json:"-"`
  1104  	// NullFields is a list of field names (e.g. "AllowPasswordUser") to include in
  1105  	// API requests with the JSON null value. By default, fields with empty values
  1106  	// are omitted from API requests. See
  1107  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1108  	NullFields []string `json:"-"`
  1109  }
  1110  
  1111  func (s *GoogleCloudIdentitytoolkitV1GetProjectConfigResponse) MarshalJSON() ([]byte, error) {
  1112  	type NoMethod GoogleCloudIdentitytoolkitV1GetProjectConfigResponse
  1113  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1114  }
  1115  
  1116  // GoogleCloudIdentitytoolkitV1GetRecaptchaParamResponse: Response message for
  1117  // GetRecaptchaParam.
  1118  type GoogleCloudIdentitytoolkitV1GetRecaptchaParamResponse struct {
  1119  	Kind string `json:"kind,omitempty"`
  1120  	// ProducerProjectNumber: The producer project number used to generate PIA
  1121  	// tokens
  1122  	ProducerProjectNumber string `json:"producerProjectNumber,omitempty"`
  1123  	// RecaptchaSiteKey: The reCAPTCHA v2 site key used to invoke the reCAPTCHA
  1124  	// service. Always present.
  1125  	RecaptchaSiteKey string `json:"recaptchaSiteKey,omitempty"`
  1126  	RecaptchaStoken  string `json:"recaptchaStoken,omitempty"`
  1127  
  1128  	// ServerResponse contains the HTTP response code and headers from the server.
  1129  	googleapi.ServerResponse `json:"-"`
  1130  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  1131  	// include in API requests. By default, fields with empty or default values are
  1132  	// omitted from API requests. See
  1133  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1134  	// details.
  1135  	ForceSendFields []string `json:"-"`
  1136  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  1137  	// with the JSON null value. By default, fields with empty values are omitted
  1138  	// from API requests. See
  1139  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1140  	NullFields []string `json:"-"`
  1141  }
  1142  
  1143  func (s *GoogleCloudIdentitytoolkitV1GetRecaptchaParamResponse) MarshalJSON() ([]byte, error) {
  1144  	type NoMethod GoogleCloudIdentitytoolkitV1GetRecaptchaParamResponse
  1145  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1146  }
  1147  
  1148  // GoogleCloudIdentitytoolkitV1GetSessionCookiePublicKeysResponse: Response
  1149  // message for GetSessionCookiePublicKeys.
  1150  type GoogleCloudIdentitytoolkitV1GetSessionCookiePublicKeysResponse struct {
  1151  	// Keys: Public keys of the session cookie signer, formatted as JSON Web Keys
  1152  	// (JWK) (https://tools.ietf.org/html/rfc7517).
  1153  	Keys []*GoogleCloudIdentitytoolkitV1OpenIdConnectKey `json:"keys,omitempty"`
  1154  
  1155  	// ServerResponse contains the HTTP response code and headers from the server.
  1156  	googleapi.ServerResponse `json:"-"`
  1157  	// ForceSendFields is a list of field names (e.g. "Keys") to unconditionally
  1158  	// include in API requests. By default, fields with empty or default values are
  1159  	// omitted from API requests. See
  1160  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1161  	// details.
  1162  	ForceSendFields []string `json:"-"`
  1163  	// NullFields is a list of field names (e.g. "Keys") to include in API requests
  1164  	// with the JSON null value. By default, fields with empty values are omitted
  1165  	// from API requests. See
  1166  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1167  	NullFields []string `json:"-"`
  1168  }
  1169  
  1170  func (s *GoogleCloudIdentitytoolkitV1GetSessionCookiePublicKeysResponse) MarshalJSON() ([]byte, error) {
  1171  	type NoMethod GoogleCloudIdentitytoolkitV1GetSessionCookiePublicKeysResponse
  1172  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1173  }
  1174  
  1175  // GoogleCloudIdentitytoolkitV1IdpConfig: Config of an identity provider.
  1176  type GoogleCloudIdentitytoolkitV1IdpConfig struct {
  1177  	// ClientId: OAuth2 client ID.
  1178  	ClientId string `json:"clientId,omitempty"`
  1179  	// Enabled: True if allows the user to sign in with the provider.
  1180  	Enabled bool `json:"enabled,omitempty"`
  1181  	// ExperimentPercent: Percent of users who will be prompted/redirected
  1182  	// federated login for this IdP
  1183  	ExperimentPercent int64 `json:"experimentPercent,omitempty"`
  1184  	// Provider: Name of the identity provider.
  1185  	//
  1186  	// Possible values:
  1187  	//   "PROVIDER_UNSPECIFIED"
  1188  	//   "MSLIVE" - Microsoft Live as identity provider.
  1189  	//   "GOOGLE" - Google as identity provider.
  1190  	//   "FACEBOOK" - Facebook as identity provider.
  1191  	//   "PAYPAL" - PayPal as identity provider.
  1192  	//   "TWITTER" - Twitter as identity provider.
  1193  	//   "YAHOO" - Yahoo as identity provider.
  1194  	//   "AOL" - AOL as identity provider.
  1195  	//   "GITHUB" - GitHub as identity provider.
  1196  	//   "GOOGLE_PLAY_GAMES" - Google Play Games as identity provider.
  1197  	//   "LINKEDIN" - LinkedIn as identity provider.
  1198  	//   "IOS_GAME_CENTER" - iOS Game Center as identity provider.
  1199  	Provider string `json:"provider,omitempty"`
  1200  	// Secret: OAuth2 client secret.
  1201  	Secret string `json:"secret,omitempty"`
  1202  	// WhitelistedAudiences: Whitelisted client IDs for audience check.
  1203  	WhitelistedAudiences []string `json:"whitelistedAudiences,omitempty"`
  1204  	// ForceSendFields is a list of field names (e.g. "ClientId") to
  1205  	// unconditionally include in API requests. By default, fields with empty or
  1206  	// default values are omitted from API requests. See
  1207  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1208  	// details.
  1209  	ForceSendFields []string `json:"-"`
  1210  	// NullFields is a list of field names (e.g. "ClientId") to include in API
  1211  	// requests with the JSON null value. By default, fields with empty values are
  1212  	// omitted from API requests. See
  1213  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1214  	NullFields []string `json:"-"`
  1215  }
  1216  
  1217  func (s *GoogleCloudIdentitytoolkitV1IdpConfig) MarshalJSON() ([]byte, error) {
  1218  	type NoMethod GoogleCloudIdentitytoolkitV1IdpConfig
  1219  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1220  }
  1221  
  1222  // GoogleCloudIdentitytoolkitV1IssueSamlResponseRequest: Request message for
  1223  // IssueSamlResponse.
  1224  type GoogleCloudIdentitytoolkitV1IssueSamlResponseRequest struct {
  1225  	// IdToken: The Identity Platform ID token. It will be verified and then
  1226  	// converted to a new SAMLResponse.
  1227  	IdToken string `json:"idToken,omitempty"`
  1228  	// RpId: Relying Party identifier, which is the audience of issued
  1229  	// SAMLResponse.
  1230  	RpId string `json:"rpId,omitempty"`
  1231  	// SamlAppEntityId: SAML app entity id specified in Google Admin Console for
  1232  	// each app. If developers want to redirect to a third-party app rather than a
  1233  	// G Suite app, they'll probably they need this. When it's used, we'll return a
  1234  	// RelayState. This includes a SAMLRequest, which can be used to trigger a
  1235  	// SP-initiated SAML flow to redirect to the real app.
  1236  	SamlAppEntityId string `json:"samlAppEntityId,omitempty"`
  1237  	// ForceSendFields is a list of field names (e.g. "IdToken") to unconditionally
  1238  	// include in API requests. By default, fields with empty or default values are
  1239  	// omitted from API requests. See
  1240  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1241  	// details.
  1242  	ForceSendFields []string `json:"-"`
  1243  	// NullFields is a list of field names (e.g. "IdToken") to include in API
  1244  	// requests with the JSON null value. By default, fields with empty values are
  1245  	// omitted from API requests. See
  1246  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1247  	NullFields []string `json:"-"`
  1248  }
  1249  
  1250  func (s *GoogleCloudIdentitytoolkitV1IssueSamlResponseRequest) MarshalJSON() ([]byte, error) {
  1251  	type NoMethod GoogleCloudIdentitytoolkitV1IssueSamlResponseRequest
  1252  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1253  }
  1254  
  1255  // GoogleCloudIdentitytoolkitV1IssueSamlResponseResponse: Response for
  1256  // IssueSamlResponse request.
  1257  type GoogleCloudIdentitytoolkitV1IssueSamlResponseResponse struct {
  1258  	// AcsEndpoint: The ACS endpoint which consumes the returned SAMLResponse.
  1259  	AcsEndpoint string `json:"acsEndpoint,omitempty"`
  1260  	// Email: Email of the user.
  1261  	Email string `json:"email,omitempty"`
  1262  	// FirstName: First name of the user.
  1263  	FirstName string `json:"firstName,omitempty"`
  1264  	// IsNewUser: Whether the logged in user was created by this request.
  1265  	IsNewUser bool `json:"isNewUser,omitempty"`
  1266  	// LastName: Last name of the user.
  1267  	LastName string `json:"lastName,omitempty"`
  1268  	// RelayState: Generated RelayState.
  1269  	RelayState string `json:"relayState,omitempty"`
  1270  	// SamlResponse: Signed SAMLResponse created for the Relying Party.
  1271  	SamlResponse string `json:"samlResponse,omitempty"`
  1272  
  1273  	// ServerResponse contains the HTTP response code and headers from the server.
  1274  	googleapi.ServerResponse `json:"-"`
  1275  	// ForceSendFields is a list of field names (e.g. "AcsEndpoint") to
  1276  	// unconditionally include in API requests. By default, fields with empty or
  1277  	// default values are omitted from API requests. See
  1278  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1279  	// details.
  1280  	ForceSendFields []string `json:"-"`
  1281  	// NullFields is a list of field names (e.g. "AcsEndpoint") to include in API
  1282  	// requests with the JSON null value. By default, fields with empty values are
  1283  	// omitted from API requests. See
  1284  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1285  	NullFields []string `json:"-"`
  1286  }
  1287  
  1288  func (s *GoogleCloudIdentitytoolkitV1IssueSamlResponseResponse) MarshalJSON() ([]byte, error) {
  1289  	type NoMethod GoogleCloudIdentitytoolkitV1IssueSamlResponseResponse
  1290  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1291  }
  1292  
  1293  // GoogleCloudIdentitytoolkitV1MfaEnrollment: Information on which multi-factor
  1294  // authentication (MFA) providers are enabled for an account.
  1295  type GoogleCloudIdentitytoolkitV1MfaEnrollment struct {
  1296  	// DisplayName: Display name for this mfa option e.g. "corp cell phone".
  1297  	DisplayName string `json:"displayName,omitempty"`
  1298  	// EmailInfo: Contains information specific to email MFA.
  1299  	EmailInfo *GoogleCloudIdentitytoolkitV1EmailInfo `json:"emailInfo,omitempty"`
  1300  	// EnrolledAt: Timestamp when the account enrolled this second factor.
  1301  	EnrolledAt string `json:"enrolledAt,omitempty"`
  1302  	// MfaEnrollmentId: ID of this MFA option.
  1303  	MfaEnrollmentId string `json:"mfaEnrollmentId,omitempty"`
  1304  	// PhoneInfo: Normally this will show the phone number associated with this
  1305  	// enrollment. In some situations, such as after a first factor sign in, it
  1306  	// will only show the obfuscated version of the associated phone number.
  1307  	PhoneInfo string `json:"phoneInfo,omitempty"`
  1308  	// TotpInfo: Contains information specific to TOTP MFA.
  1309  	TotpInfo *GoogleCloudIdentitytoolkitV1TotpInfo `json:"totpInfo,omitempty"`
  1310  	// UnobfuscatedPhoneInfo: Output only. Unobfuscated phone_info.
  1311  	UnobfuscatedPhoneInfo string `json:"unobfuscatedPhoneInfo,omitempty"`
  1312  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1313  	// unconditionally include in API requests. By default, fields with empty or
  1314  	// default values are omitted from API requests. See
  1315  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1316  	// details.
  1317  	ForceSendFields []string `json:"-"`
  1318  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  1319  	// requests with the JSON null value. By default, fields with empty values are
  1320  	// omitted from API requests. See
  1321  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1322  	NullFields []string `json:"-"`
  1323  }
  1324  
  1325  func (s *GoogleCloudIdentitytoolkitV1MfaEnrollment) MarshalJSON() ([]byte, error) {
  1326  	type NoMethod GoogleCloudIdentitytoolkitV1MfaEnrollment
  1327  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1328  }
  1329  
  1330  type GoogleCloudIdentitytoolkitV1MfaFactor struct {
  1331  	// DisplayName: Display name for this mfa option e.g. "corp cell phone".
  1332  	DisplayName string `json:"displayName,omitempty"`
  1333  	// PhoneInfo: Phone number to receive OTP for MFA.
  1334  	PhoneInfo string `json:"phoneInfo,omitempty"`
  1335  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1336  	// unconditionally include in API requests. By default, fields with empty or
  1337  	// default values are omitted from API requests. See
  1338  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1339  	// details.
  1340  	ForceSendFields []string `json:"-"`
  1341  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  1342  	// requests with the JSON null value. By default, fields with empty values are
  1343  	// omitted from API requests. See
  1344  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1345  	NullFields []string `json:"-"`
  1346  }
  1347  
  1348  func (s *GoogleCloudIdentitytoolkitV1MfaFactor) MarshalJSON() ([]byte, error) {
  1349  	type NoMethod GoogleCloudIdentitytoolkitV1MfaFactor
  1350  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1351  }
  1352  
  1353  // GoogleCloudIdentitytoolkitV1MfaInfo: Multi-factor authentication related
  1354  // information.
  1355  type GoogleCloudIdentitytoolkitV1MfaInfo struct {
  1356  	// Enrollments: The second factors the user has enrolled.
  1357  	Enrollments []*GoogleCloudIdentitytoolkitV1MfaEnrollment `json:"enrollments,omitempty"`
  1358  	// ForceSendFields is a list of field names (e.g. "Enrollments") to
  1359  	// unconditionally include in API requests. By default, fields with empty or
  1360  	// default values are omitted from API requests. See
  1361  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1362  	// details.
  1363  	ForceSendFields []string `json:"-"`
  1364  	// NullFields is a list of field names (e.g. "Enrollments") to include in API
  1365  	// requests with the JSON null value. By default, fields with empty values are
  1366  	// omitted from API requests. See
  1367  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1368  	NullFields []string `json:"-"`
  1369  }
  1370  
  1371  func (s *GoogleCloudIdentitytoolkitV1MfaInfo) MarshalJSON() ([]byte, error) {
  1372  	type NoMethod GoogleCloudIdentitytoolkitV1MfaInfo
  1373  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1374  }
  1375  
  1376  // GoogleCloudIdentitytoolkitV1OpenIdConnectKey: Represents a public key of the
  1377  // session cookie signer, formatted as a JSON Web Key (JWK)
  1378  // (https://tools.ietf.org/html/rfc7517).
  1379  type GoogleCloudIdentitytoolkitV1OpenIdConnectKey struct {
  1380  	// Alg: Signature algorithm.
  1381  	Alg string `json:"alg,omitempty"`
  1382  	// E: Exponent for the RSA public key, it is represented as the base64url
  1383  	// encoding of the value's big endian representation.
  1384  	E string `json:"e,omitempty"`
  1385  	// Kid: Unique string to identify this key.
  1386  	Kid string `json:"kid,omitempty"`
  1387  	// Kty: Key type.
  1388  	Kty string `json:"kty,omitempty"`
  1389  	// N: Modulus for the RSA public key, it is represented as the base64url
  1390  	// encoding of the value's big endian representation.
  1391  	N string `json:"n,omitempty"`
  1392  	// Use: Key use.
  1393  	Use string `json:"use,omitempty"`
  1394  	// ForceSendFields is a list of field names (e.g. "Alg") to unconditionally
  1395  	// include in API requests. By default, fields with empty or default values are
  1396  	// omitted from API requests. See
  1397  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1398  	// details.
  1399  	ForceSendFields []string `json:"-"`
  1400  	// NullFields is a list of field names (e.g. "Alg") to include in API requests
  1401  	// with the JSON null value. By default, fields with empty values are omitted
  1402  	// from API requests. See
  1403  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1404  	NullFields []string `json:"-"`
  1405  }
  1406  
  1407  func (s *GoogleCloudIdentitytoolkitV1OpenIdConnectKey) MarshalJSON() ([]byte, error) {
  1408  	type NoMethod GoogleCloudIdentitytoolkitV1OpenIdConnectKey
  1409  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1410  }
  1411  
  1412  // GoogleCloudIdentitytoolkitV1ProviderUserInfo: Information about the user as
  1413  // provided by various Identity Providers.
  1414  type GoogleCloudIdentitytoolkitV1ProviderUserInfo struct {
  1415  	// DisplayName: The user's display name at the Identity Provider.
  1416  	DisplayName string `json:"displayName,omitempty"`
  1417  	// Email: The user's email address at the Identity Provider.
  1418  	Email string `json:"email,omitempty"`
  1419  	// FederatedId: The user's identifier at the Identity Provider.
  1420  	FederatedId string `json:"federatedId,omitempty"`
  1421  	// PhoneNumber: The user's phone number at the Identity Provider.
  1422  	PhoneNumber string `json:"phoneNumber,omitempty"`
  1423  	// PhotoUrl: The user's profile photo URL at the Identity Provider.
  1424  	PhotoUrl string `json:"photoUrl,omitempty"`
  1425  	// ProviderId: The ID of the Identity Provider.
  1426  	ProviderId string `json:"providerId,omitempty"`
  1427  	// RawId: The user's raw identifier directly returned from Identity Provider.
  1428  	RawId string `json:"rawId,omitempty"`
  1429  	// ScreenName: The user's screen_name at Twitter or login name at GitHub.
  1430  	ScreenName string `json:"screenName,omitempty"`
  1431  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1432  	// unconditionally include in API requests. By default, fields with empty or
  1433  	// default values are omitted from API requests. See
  1434  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1435  	// details.
  1436  	ForceSendFields []string `json:"-"`
  1437  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  1438  	// requests with the JSON null value. By default, fields with empty values are
  1439  	// omitted from API requests. See
  1440  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1441  	NullFields []string `json:"-"`
  1442  }
  1443  
  1444  func (s *GoogleCloudIdentitytoolkitV1ProviderUserInfo) MarshalJSON() ([]byte, error) {
  1445  	type NoMethod GoogleCloudIdentitytoolkitV1ProviderUserInfo
  1446  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1447  }
  1448  
  1449  // GoogleCloudIdentitytoolkitV1QueryUserInfoRequest: Request message for
  1450  // QueryUserInfo.
  1451  type GoogleCloudIdentitytoolkitV1QueryUserInfoRequest struct {
  1452  	// Expression: Query conditions used to filter results. If more than one is
  1453  	// passed, only the first SqlExpression is evaluated.
  1454  	Expression []*GoogleCloudIdentitytoolkitV1SqlExpression `json:"expression,omitempty"`
  1455  	// Limit: The maximum number of accounts to return with an upper limit of
  1456  	// __500__. Defaults to _500_. Only valid when `return_user_info` is set to
  1457  	// `true`.
  1458  	Limit int64 `json:"limit,omitempty,string"`
  1459  	// Offset: The number of accounts to skip from the beginning of matching
  1460  	// records. Only valid when `return_user_info` is set to `true`.
  1461  	Offset int64 `json:"offset,omitempty,string"`
  1462  	// Order: The order for sorting query result. Defaults to __ascending__ order.
  1463  	// Only valid when `return_user_info` is set to `true`.
  1464  	//
  1465  	// Possible values:
  1466  	//   "ORDER_UNSPECIFIED" - Order is not specified.
  1467  	//   "ASC" - Sort on ascending order.
  1468  	//   "DESC" - Sort on descending order.
  1469  	Order string `json:"order,omitempty"`
  1470  	// ReturnUserInfo: If `true`, this request will return the accounts matching
  1471  	// the query. If `false`, only the __count__ of accounts matching the query
  1472  	// will be returned. Defaults to `true`.
  1473  	ReturnUserInfo bool `json:"returnUserInfo,omitempty"`
  1474  	// SortBy: The field to use for sorting user accounts. Defaults to `USER_ID`.
  1475  	// Note: when `phone_number` is specified in `expression`, the result ignores
  1476  	// the sorting. Only valid when `return_user_info` is set to `true`.
  1477  	//
  1478  	// Possible values:
  1479  	//   "SORT_BY_FIELD_UNSPECIFIED" - Sort field is not specified.
  1480  	//   "USER_ID" - Sort result by userId.
  1481  	//   "NAME" - Sort result by name.
  1482  	//   "CREATED_AT" - Sort result by createdAt.
  1483  	//   "LAST_LOGIN_AT" - Sort result by lastLoginAt.
  1484  	//   "USER_EMAIL" - Sort result by userEmail.
  1485  	SortBy string `json:"sortBy,omitempty"`
  1486  	// TenantId: The ID of the tenant to which the result is scoped.
  1487  	TenantId string `json:"tenantId,omitempty"`
  1488  	// ForceSendFields is a list of field names (e.g. "Expression") to
  1489  	// unconditionally include in API requests. By default, fields with empty or
  1490  	// default values are omitted from API requests. See
  1491  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1492  	// details.
  1493  	ForceSendFields []string `json:"-"`
  1494  	// NullFields is a list of field names (e.g. "Expression") to include in API
  1495  	// requests with the JSON null value. By default, fields with empty values are
  1496  	// omitted from API requests. See
  1497  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1498  	NullFields []string `json:"-"`
  1499  }
  1500  
  1501  func (s *GoogleCloudIdentitytoolkitV1QueryUserInfoRequest) MarshalJSON() ([]byte, error) {
  1502  	type NoMethod GoogleCloudIdentitytoolkitV1QueryUserInfoRequest
  1503  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1504  }
  1505  
  1506  // GoogleCloudIdentitytoolkitV1QueryUserInfoResponse: Response message for
  1507  // QueryUserInfo.
  1508  type GoogleCloudIdentitytoolkitV1QueryUserInfoResponse struct {
  1509  	// RecordsCount: If `return_user_info` in the request is true, this is the
  1510  	// number of returned accounts in this message. Otherwise, this is the total
  1511  	// number of accounts matching the query.
  1512  	RecordsCount int64 `json:"recordsCount,omitempty,string"`
  1513  	// UserInfo: If `return_user_info` in the request is true, this is the accounts
  1514  	// matching the query.
  1515  	UserInfo []*GoogleCloudIdentitytoolkitV1UserInfo `json:"userInfo,omitempty"`
  1516  
  1517  	// ServerResponse contains the HTTP response code and headers from the server.
  1518  	googleapi.ServerResponse `json:"-"`
  1519  	// ForceSendFields is a list of field names (e.g. "RecordsCount") to
  1520  	// unconditionally include in API requests. By default, fields with empty or
  1521  	// default values are 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. "RecordsCount") 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 *GoogleCloudIdentitytoolkitV1QueryUserInfoResponse) MarshalJSON() ([]byte, error) {
  1533  	type NoMethod GoogleCloudIdentitytoolkitV1QueryUserInfoResponse
  1534  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1535  }
  1536  
  1537  // GoogleCloudIdentitytoolkitV1ResetPasswordRequest: Request message for
  1538  // ResetPassword.
  1539  type GoogleCloudIdentitytoolkitV1ResetPasswordRequest struct {
  1540  	// Email: The email of the account to be modified. Specify this and the old
  1541  	// password in order to change an account's password without using an
  1542  	// out-of-band code.
  1543  	Email string `json:"email,omitempty"`
  1544  	// NewPassword: The new password to be set for this account. Specifying this
  1545  	// field will result in a change to the account and consume the out-of-band
  1546  	// code if one was specified and it was of type PASSWORD_RESET.
  1547  	NewPassword string `json:"newPassword,omitempty"`
  1548  	// OldPassword: The current password of the account to be modified. Specify
  1549  	// this and email to change an account's password without using an out-of-band
  1550  	// code.
  1551  	OldPassword string `json:"oldPassword,omitempty"`
  1552  	// OobCode: An out-of-band (OOB) code generated by GetOobCode request. Specify
  1553  	// only this parameter (or only this parameter and a tenant ID) to get the
  1554  	// out-of-band code's type in the response without mutating the account's
  1555  	// state. Only a PASSWORD_RESET out-of-band code can be consumed via this
  1556  	// method.
  1557  	OobCode string `json:"oobCode,omitempty"`
  1558  	// TenantId: The tenant ID of the Identity Platform tenant the account belongs
  1559  	// to.
  1560  	TenantId string `json:"tenantId,omitempty"`
  1561  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
  1562  	// include in API requests. By default, fields with empty or default values are
  1563  	// omitted from API requests. See
  1564  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1565  	// details.
  1566  	ForceSendFields []string `json:"-"`
  1567  	// NullFields is a list of field names (e.g. "Email") to include in API
  1568  	// requests with the JSON null value. By default, fields with empty values are
  1569  	// omitted from API requests. See
  1570  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1571  	NullFields []string `json:"-"`
  1572  }
  1573  
  1574  func (s *GoogleCloudIdentitytoolkitV1ResetPasswordRequest) MarshalJSON() ([]byte, error) {
  1575  	type NoMethod GoogleCloudIdentitytoolkitV1ResetPasswordRequest
  1576  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1577  }
  1578  
  1579  // GoogleCloudIdentitytoolkitV1ResetPasswordResponse: Response message for
  1580  // ResetPassword.
  1581  type GoogleCloudIdentitytoolkitV1ResetPasswordResponse struct {
  1582  	// Email: The email associated with the out-of-band code that was used.
  1583  	Email    string                                     `json:"email,omitempty"`
  1584  	Kind     string                                     `json:"kind,omitempty"`
  1585  	MfaInfo  *GoogleCloudIdentitytoolkitV1MfaEnrollment `json:"mfaInfo,omitempty"`
  1586  	NewEmail string                                     `json:"newEmail,omitempty"`
  1587  	// Possible values:
  1588  	//   "OOB_REQ_TYPE_UNSPECIFIED" - Oob code type is not specified.
  1589  	//   "PASSWORD_RESET" - reset password
  1590  	//   "OLD_EMAIL_AGREE"
  1591  	//   "NEW_EMAIL_ACCEPT"
  1592  	//   "VERIFY_EMAIL" - verify the account's email address by sending an email
  1593  	//   "RECOVER_EMAIL"
  1594  	//   "EMAIL_SIGNIN" - sign in with email only
  1595  	//   "VERIFY_AND_CHANGE_EMAIL" - This flow sends an email to the specified new
  1596  	// email, and when applied by clicking the link in the email changes the
  1597  	// account's email to the new email. Used when the account must have verified
  1598  	// email at all times, such as MFA accounts.
  1599  	//   "REVERT_SECOND_FACTOR_ADDITION"
  1600  	RequestType string `json:"requestType,omitempty"`
  1601  
  1602  	// ServerResponse contains the HTTP response code and headers from the server.
  1603  	googleapi.ServerResponse `json:"-"`
  1604  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
  1605  	// include in API requests. By default, fields with empty or default values are
  1606  	// omitted from API requests. See
  1607  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1608  	// details.
  1609  	ForceSendFields []string `json:"-"`
  1610  	// NullFields is a list of field names (e.g. "Email") to include in API
  1611  	// requests with the JSON null value. By default, fields with empty values are
  1612  	// omitted from API requests. See
  1613  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1614  	NullFields []string `json:"-"`
  1615  }
  1616  
  1617  func (s *GoogleCloudIdentitytoolkitV1ResetPasswordResponse) MarshalJSON() ([]byte, error) {
  1618  	type NoMethod GoogleCloudIdentitytoolkitV1ResetPasswordResponse
  1619  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1620  }
  1621  
  1622  // GoogleCloudIdentitytoolkitV1SendVerificationCodeRequest: Request message for
  1623  // SendVerificationCode. At least one of (`ios_receipt` and `ios_secret`),
  1624  // `recaptcha_token`, or `safety_net_token` must be specified to verify the
  1625  // verification code is being sent on behalf of a real app and not an emulator.
  1626  type GoogleCloudIdentitytoolkitV1SendVerificationCodeRequest struct {
  1627  	// AutoRetrievalInfo: Android only. Used by Google Play Services to identify
  1628  	// the app for auto-retrieval.
  1629  	AutoRetrievalInfo *GoogleCloudIdentitytoolkitV1AutoRetrievalInfo `json:"autoRetrievalInfo,omitempty"`
  1630  	// IosReceipt: Receipt of successful iOS app token validation. At least one of
  1631  	// (`ios_receipt` and `ios_secret`), `recaptcha_token`, or `safety_net_token`
  1632  	// must be specified to verify the verification code is being sent on behalf of
  1633  	// a real app and not an emulator. This should come from the response of
  1634  	// verifyIosClient. If present, the caller should also provide the
  1635  	// `ios_secret`, as well as a bundle ID in the `x-ios-bundle-identifier`
  1636  	// header, which must match the bundle ID from the verifyIosClient request.
  1637  	IosReceipt string `json:"iosReceipt,omitempty"`
  1638  	// IosSecret: Secret delivered to iOS app as a push notification. Should be
  1639  	// passed with an `ios_receipt` as well as the `x-ios-bundle-identifier`
  1640  	// header.
  1641  	IosSecret string `json:"iosSecret,omitempty"`
  1642  	// PhoneNumber: The phone number to send the verification code to in E.164
  1643  	// format.
  1644  	PhoneNumber string `json:"phoneNumber,omitempty"`
  1645  	// PlayIntegrityToken: Android only. Used to assert application identity in
  1646  	// place of a recaptcha token (and safety_net_token). At least one of
  1647  	// (`ios_receipt` and `ios_secret`), `recaptcha_token`, , or
  1648  	// `play_integrity_token` must be specified to verify the verification code is
  1649  	// being sent on behalf of a real app and not an emulator. A Play Integrity
  1650  	// Token can be generated via the PlayIntegrity API
  1651  	// (https://developer.android.com/google/play/integrity) with applying SHA256
  1652  	// to the `phone_number` field as the nonce.
  1653  	PlayIntegrityToken string `json:"playIntegrityToken,omitempty"`
  1654  	// RecaptchaToken: Recaptcha token for app verification. At least one of
  1655  	// (`ios_receipt` and `ios_secret`), `recaptcha_token`, or `safety_net_token`
  1656  	// must be specified to verify the verification code is being sent on behalf of
  1657  	// a real app and not an emulator. The recaptcha should be generated by calling
  1658  	// getRecaptchaParams and the recaptcha token will be generated on user
  1659  	// completion of the recaptcha challenge.
  1660  	RecaptchaToken string `json:"recaptchaToken,omitempty"`
  1661  	// SafetyNetToken: Android only. Used to assert application identity in place
  1662  	// of a recaptcha token. At least one of (`ios_receipt` and `ios_secret`),
  1663  	// `recaptcha_token`, or `safety_net_token` must be specified to verify the
  1664  	// verification code is being sent on behalf of a real app and not an emulator.
  1665  	// A SafetyNet Token can be generated via the SafetyNet Android Attestation API
  1666  	// (https://developer.android.com/training/safetynet/attestation.html), with
  1667  	// the Base64 encoding of the `phone_number` field as the nonce.
  1668  	SafetyNetToken string `json:"safetyNetToken,omitempty"`
  1669  	// TenantId: Tenant ID of the Identity Platform tenant the user is signing in
  1670  	// to.
  1671  	TenantId string `json:"tenantId,omitempty"`
  1672  	// ForceSendFields is a list of field names (e.g. "AutoRetrievalInfo") to
  1673  	// unconditionally include in API requests. By default, fields with empty or
  1674  	// default values are omitted from API requests. See
  1675  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1676  	// details.
  1677  	ForceSendFields []string `json:"-"`
  1678  	// NullFields is a list of field names (e.g. "AutoRetrievalInfo") to include in
  1679  	// API requests with the JSON null value. By default, fields with empty values
  1680  	// are omitted from API requests. See
  1681  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1682  	NullFields []string `json:"-"`
  1683  }
  1684  
  1685  func (s *GoogleCloudIdentitytoolkitV1SendVerificationCodeRequest) MarshalJSON() ([]byte, error) {
  1686  	type NoMethod GoogleCloudIdentitytoolkitV1SendVerificationCodeRequest
  1687  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1688  }
  1689  
  1690  // GoogleCloudIdentitytoolkitV1SendVerificationCodeResponse: Response message
  1691  // for SendVerificationCode.
  1692  type GoogleCloudIdentitytoolkitV1SendVerificationCodeResponse struct {
  1693  	// SessionInfo: Encrypted session information. This can be used in
  1694  	// signInWithPhoneNumber to authenticate the phone number.
  1695  	SessionInfo string `json:"sessionInfo,omitempty"`
  1696  
  1697  	// ServerResponse contains the HTTP response code and headers from the server.
  1698  	googleapi.ServerResponse `json:"-"`
  1699  	// ForceSendFields is a list of field names (e.g. "SessionInfo") to
  1700  	// unconditionally include in API requests. By default, fields with empty or
  1701  	// default values are omitted from API requests. See
  1702  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1703  	// details.
  1704  	ForceSendFields []string `json:"-"`
  1705  	// NullFields is a list of field names (e.g. "SessionInfo") to include in API
  1706  	// requests with the JSON null value. By default, fields with empty values are
  1707  	// omitted from API requests. See
  1708  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1709  	NullFields []string `json:"-"`
  1710  }
  1711  
  1712  func (s *GoogleCloudIdentitytoolkitV1SendVerificationCodeResponse) MarshalJSON() ([]byte, error) {
  1713  	type NoMethod GoogleCloudIdentitytoolkitV1SendVerificationCodeResponse
  1714  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1715  }
  1716  
  1717  // GoogleCloudIdentitytoolkitV1SetAccountInfoRequest: Request message for
  1718  // SetAccountInfo.
  1719  type GoogleCloudIdentitytoolkitV1SetAccountInfoRequest struct {
  1720  	CaptchaChallenge string `json:"captchaChallenge,omitempty"`
  1721  	// CaptchaResponse: The response from reCaptcha challenge. This is required
  1722  	// when the system detects possible abuse activities.
  1723  	CaptchaResponse string `json:"captchaResponse,omitempty"`
  1724  	// CreatedAt: The timestamp in milliseconds when the account was created.
  1725  	CreatedAt int64 `json:"createdAt,omitempty,string"`
  1726  	// CustomAttributes: JSON formatted custom attributes to be stored in the
  1727  	// Identity Platform ID token. Specifying this field requires a Google OAuth
  1728  	// 2.0 credential with proper [permissions]
  1729  	// (https://cloud.google.com/identity-platform/docs/access-control).
  1730  	CustomAttributes       string `json:"customAttributes,omitempty"`
  1731  	DelegatedProjectNumber int64  `json:"delegatedProjectNumber,omitempty,string"`
  1732  	// DeleteAttribute: The account's attributes to be deleted.
  1733  	//
  1734  	// Possible values:
  1735  	//   "USER_ATTRIBUTE_NAME_UNSPECIFIED" - User attribute name is not specified.
  1736  	//   "EMAIL" - User attribute key name is email.
  1737  	//   "DISPLAY_NAME" - User attribute key name is displayName.
  1738  	//   "PROVIDER" - User attribute key name is provider.
  1739  	//   "PHOTO_URL" - User attribute key name is photoURL.
  1740  	//   "PASSWORD" - User attribute key name is password.
  1741  	//   "RAW_USER_INFO" - User attribute key name is rawUserInfo.
  1742  	DeleteAttribute []string `json:"deleteAttribute,omitempty"`
  1743  	// DeleteProvider: The Identity Providers to unlink from the user's account.
  1744  	DeleteProvider []string `json:"deleteProvider,omitempty"`
  1745  	// DisableUser: If true, marks the account as disabled, meaning the user will
  1746  	// no longer be able to sign-in.
  1747  	DisableUser bool `json:"disableUser,omitempty"`
  1748  	// DisplayName: The user's new display name to be updated in the account's
  1749  	// attributes. The length of the display name must be less than or equal to 256
  1750  	// characters.
  1751  	DisplayName string `json:"displayName,omitempty"`
  1752  	// Email: The user's new email to be updated in the account's attributes. The
  1753  	// length of email should be less than 256 characters and in the format of
  1754  	// `name@domain.tld`. The email should also match the RFC 822
  1755  	// (https://tools.ietf.org/html/rfc822) addr-spec production. If email
  1756  	// enumeration protection
  1757  	// (https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection)
  1758  	// is enabled, the email cannot be changed by the user without verifying the
  1759  	// email first, but it can be changed by an administrator.
  1760  	Email string `json:"email,omitempty"`
  1761  	// EmailVerified: Whether the user's email has been verified. Specifying this
  1762  	// field requires a Google OAuth 2.0 credential with proper [permissions]
  1763  	// (https://cloud.google.com/identity-platform/docs/access-control).
  1764  	EmailVerified bool `json:"emailVerified,omitempty"`
  1765  	// IdToken: A valid Identity Platform ID token. Required when attempting to
  1766  	// change user-related information.
  1767  	IdToken    string `json:"idToken,omitempty"`
  1768  	InstanceId string `json:"instanceId,omitempty"`
  1769  	// LastLoginAt: The timestamp in milliseconds when the account last logged in.
  1770  	LastLoginAt int64 `json:"lastLoginAt,omitempty,string"`
  1771  	// LinkProviderUserInfo: The provider to be linked to the user's account.
  1772  	// Specifying this field requires a Google OAuth 2.0 credential with proper
  1773  	// [permissions]
  1774  	// (https://cloud.google.com/identity-platform/docs/access-control).
  1775  	LinkProviderUserInfo *GoogleCloudIdentitytoolkitV1ProviderUserInfo `json:"linkProviderUserInfo,omitempty"`
  1776  	// LocalId: The ID of the user. Specifying this field requires a Google OAuth
  1777  	// 2.0 credential with proper [permissions]
  1778  	// (https://cloud.google.com/identity-platform/docs/access-control). For
  1779  	// requests from end-users, an ID token should be passed instead.
  1780  	LocalId string `json:"localId,omitempty"`
  1781  	// Mfa: The multi-factor authentication related information to be set on the
  1782  	// user's account. This will overwrite any previous multi-factor related
  1783  	// information on the account. Specifying this field requires a Google OAuth
  1784  	// 2.0 credential with proper [permissions]
  1785  	// (https://cloud.google.com/identity-platform/docs/access-control).
  1786  	Mfa *GoogleCloudIdentitytoolkitV1MfaInfo `json:"mfa,omitempty"`
  1787  	// OobCode: The out-of-band code to be applied on the user's account. The
  1788  	// following out-of-band code types are supported: * VERIFY_EMAIL *
  1789  	// RECOVER_EMAIL * REVERT_SECOND_FACTOR_ADDITION * VERIFY_AND_CHANGE_EMAIL
  1790  	OobCode string `json:"oobCode,omitempty"`
  1791  	// Password: The user's new password to be updated in the account's attributes.
  1792  	// The password must be at least 6 characters long.
  1793  	Password string `json:"password,omitempty"`
  1794  	// PhoneNumber: The phone number to be updated in the account's attributes.
  1795  	PhoneNumber string `json:"phoneNumber,omitempty"`
  1796  	// PhotoUrl: The user's new photo URL for the account's profile photo to be
  1797  	// updated in the account's attributes. The length of the URL must be less than
  1798  	// or equal to 2048 characters.
  1799  	PhotoUrl string `json:"photoUrl,omitempty"`
  1800  	// Provider: The Identity Providers that the account should be associated with.
  1801  	Provider []string `json:"provider,omitempty"`
  1802  	// ReturnSecureToken: Whether or not to return an ID and refresh token. Should
  1803  	// always be true.
  1804  	ReturnSecureToken bool `json:"returnSecureToken,omitempty"`
  1805  	// TargetProjectId: The project ID for the project that the account belongs to.
  1806  	// Specifying this field requires Google OAuth 2.0 credential with proper
  1807  	// [permissions]
  1808  	// (https://cloud.google.com/identity-platform/docs/access-control). Requests
  1809  	// from end users should pass an Identity Platform ID token instead.
  1810  	TargetProjectId string `json:"targetProjectId,omitempty"`
  1811  	// TenantId: The tenant ID of the Identity Platform tenant that the account
  1812  	// belongs to. Requests from end users should pass an Identity Platform ID
  1813  	// token rather than setting this field.
  1814  	TenantId string `json:"tenantId,omitempty"`
  1815  	// UpgradeToFederatedLogin: Whether the account should be restricted to only
  1816  	// using federated login.
  1817  	UpgradeToFederatedLogin bool `json:"upgradeToFederatedLogin,omitempty"`
  1818  	// ValidSince: Specifies the minimum timestamp in seconds for an Identity
  1819  	// Platform ID token to be considered valid.
  1820  	ValidSince int64 `json:"validSince,omitempty,string"`
  1821  	// ForceSendFields is a list of field names (e.g. "CaptchaChallenge") to
  1822  	// unconditionally include in API requests. By default, fields with empty or
  1823  	// default values are omitted from API requests. See
  1824  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1825  	// details.
  1826  	ForceSendFields []string `json:"-"`
  1827  	// NullFields is a list of field names (e.g. "CaptchaChallenge") to include in
  1828  	// API requests with the JSON null value. By default, fields with empty values
  1829  	// are omitted from API requests. See
  1830  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1831  	NullFields []string `json:"-"`
  1832  }
  1833  
  1834  func (s *GoogleCloudIdentitytoolkitV1SetAccountInfoRequest) MarshalJSON() ([]byte, error) {
  1835  	type NoMethod GoogleCloudIdentitytoolkitV1SetAccountInfoRequest
  1836  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1837  }
  1838  
  1839  // GoogleCloudIdentitytoolkitV1SetAccountInfoResponse: Response message for
  1840  // SetAccountInfo
  1841  type GoogleCloudIdentitytoolkitV1SetAccountInfoResponse struct {
  1842  	// DisplayName: The account's display name.
  1843  	DisplayName string `json:"displayName,omitempty"`
  1844  	// Email: The account's email address.
  1845  	Email string `json:"email,omitempty"`
  1846  	// EmailVerified: Whether the account's email has been verified.
  1847  	EmailVerified bool `json:"emailVerified,omitempty"`
  1848  	// ExpiresIn: The number of seconds until the Identity Platform ID token
  1849  	// expires.
  1850  	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
  1851  	// IdToken: An Identity Platform ID token for the account. This is used for
  1852  	// legacy user sign up.
  1853  	IdToken string `json:"idToken,omitempty"`
  1854  	Kind    string `json:"kind,omitempty"`
  1855  	// LocalId: The ID of the authenticated user.
  1856  	LocalId string `json:"localId,omitempty"`
  1857  	// NewEmail: The new email that has been set on the user's account attributes.
  1858  	NewEmail string `json:"newEmail,omitempty"`
  1859  	// PasswordHash: Deprecated. No actual password hash is currently returned.
  1860  	PasswordHash string `json:"passwordHash,omitempty"`
  1861  	// PhotoUrl: The user's photo URL for the account's profile photo.
  1862  	PhotoUrl string `json:"photoUrl,omitempty"`
  1863  	// ProviderUserInfo: The linked Identity Providers on the account.
  1864  	ProviderUserInfo []*GoogleCloudIdentitytoolkitV1ProviderUserInfo `json:"providerUserInfo,omitempty"`
  1865  	// RefreshToken: A refresh token for the account. This is used for legacy user
  1866  	// sign up.
  1867  	RefreshToken string `json:"refreshToken,omitempty"`
  1868  
  1869  	// ServerResponse contains the HTTP response code and headers from the server.
  1870  	googleapi.ServerResponse `json:"-"`
  1871  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1872  	// unconditionally include in API requests. By default, fields with empty or
  1873  	// default values are omitted from API requests. See
  1874  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1875  	// details.
  1876  	ForceSendFields []string `json:"-"`
  1877  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  1878  	// requests with the JSON null value. By default, fields with empty values are
  1879  	// omitted from API requests. See
  1880  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1881  	NullFields []string `json:"-"`
  1882  }
  1883  
  1884  func (s *GoogleCloudIdentitytoolkitV1SetAccountInfoResponse) MarshalJSON() ([]byte, error) {
  1885  	type NoMethod GoogleCloudIdentitytoolkitV1SetAccountInfoResponse
  1886  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1887  }
  1888  
  1889  // GoogleCloudIdentitytoolkitV1SignInWithCustomTokenRequest: Request message
  1890  // for SignInWithCustomToken.
  1891  type GoogleCloudIdentitytoolkitV1SignInWithCustomTokenRequest struct {
  1892  	DelegatedProjectNumber int64  `json:"delegatedProjectNumber,omitempty,string"`
  1893  	InstanceId             string `json:"instanceId,omitempty"`
  1894  	// ReturnSecureToken: Should always be true.
  1895  	ReturnSecureToken bool `json:"returnSecureToken,omitempty"`
  1896  	// TenantId: The ID of the Identity Platform tenant the user is signing in to.
  1897  	// If present, the ID should match the tenant_id in the token.
  1898  	TenantId string `json:"tenantId,omitempty"`
  1899  	// Token: Required. The custom Auth token asserted by the developer. The token
  1900  	// should be a JSON Web Token (JWT) (https://tools.ietf.org/html/rfc7519) that
  1901  	// includes the claims listed in the API reference
  1902  	// (https://cloud.google.com/identity-platform/docs/reference/rest/client/)
  1903  	// under the "Custom Token Claims" section.
  1904  	Token string `json:"token,omitempty"`
  1905  	// ForceSendFields is a list of field names (e.g. "DelegatedProjectNumber") to
  1906  	// unconditionally include in API requests. By default, fields with empty or
  1907  	// default values are omitted from API requests. See
  1908  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1909  	// details.
  1910  	ForceSendFields []string `json:"-"`
  1911  	// NullFields is a list of field names (e.g. "DelegatedProjectNumber") to
  1912  	// include in API requests with the JSON null value. By default, fields with
  1913  	// empty values are omitted from API requests. See
  1914  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1915  	NullFields []string `json:"-"`
  1916  }
  1917  
  1918  func (s *GoogleCloudIdentitytoolkitV1SignInWithCustomTokenRequest) MarshalJSON() ([]byte, error) {
  1919  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithCustomTokenRequest
  1920  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1921  }
  1922  
  1923  // GoogleCloudIdentitytoolkitV1SignInWithCustomTokenResponse: Response message
  1924  // for SignInWithCustomToken.
  1925  type GoogleCloudIdentitytoolkitV1SignInWithCustomTokenResponse struct {
  1926  	// ExpiresIn: The number of seconds until the ID token expires.
  1927  	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
  1928  	// IdToken: An Identity Platform ID token for the authenticated user.
  1929  	IdToken string `json:"idToken,omitempty"`
  1930  	// IsNewUser: Whether the authenticated user was created by this request.
  1931  	IsNewUser bool   `json:"isNewUser,omitempty"`
  1932  	Kind      string `json:"kind,omitempty"`
  1933  	// RefreshToken: An Identity Platform refresh token for the authenticated user.
  1934  	RefreshToken string `json:"refreshToken,omitempty"`
  1935  
  1936  	// ServerResponse contains the HTTP response code and headers from the server.
  1937  	googleapi.ServerResponse `json:"-"`
  1938  	// ForceSendFields is a list of field names (e.g. "ExpiresIn") to
  1939  	// unconditionally include in API requests. By default, fields with empty or
  1940  	// default values are omitted from API requests. See
  1941  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1942  	// details.
  1943  	ForceSendFields []string `json:"-"`
  1944  	// NullFields is a list of field names (e.g. "ExpiresIn") to include in API
  1945  	// requests with the JSON null value. By default, fields with empty values are
  1946  	// omitted from API requests. See
  1947  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1948  	NullFields []string `json:"-"`
  1949  }
  1950  
  1951  func (s *GoogleCloudIdentitytoolkitV1SignInWithCustomTokenResponse) MarshalJSON() ([]byte, error) {
  1952  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithCustomTokenResponse
  1953  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1954  }
  1955  
  1956  // GoogleCloudIdentitytoolkitV1SignInWithEmailLinkRequest: Request message for
  1957  // SignInWithEmailLink
  1958  type GoogleCloudIdentitytoolkitV1SignInWithEmailLinkRequest struct {
  1959  	// Email: Required. The email address the sign-in link was sent to. The length
  1960  	// of email should be less than 256 characters and in the format of
  1961  	// `name@domain.tld`. The email should also match the RFC 822
  1962  	// (https://tools.ietf.org/html/rfc822) addr-spec production.
  1963  	Email string `json:"email,omitempty"`
  1964  	// IdToken: A valid ID token for an Identity Platform account. If passed, this
  1965  	// request will link the email address to the user represented by this ID token
  1966  	// and enable sign-in with email link on the account for the future.
  1967  	IdToken string `json:"idToken,omitempty"`
  1968  	// OobCode: Required. The out-of-band code from the email link.
  1969  	OobCode string `json:"oobCode,omitempty"`
  1970  	// TenantId: The ID of the Identity Platform tenant the user is signing in to.
  1971  	// If not set, the user will sign in to the default Identity Platform project.
  1972  	TenantId string `json:"tenantId,omitempty"`
  1973  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
  1974  	// include in API requests. By default, fields with empty or default values are
  1975  	// omitted from API requests. See
  1976  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1977  	// details.
  1978  	ForceSendFields []string `json:"-"`
  1979  	// NullFields is a list of field names (e.g. "Email") to include in API
  1980  	// requests with the JSON null value. By default, fields with empty values are
  1981  	// omitted from API requests. See
  1982  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1983  	NullFields []string `json:"-"`
  1984  }
  1985  
  1986  func (s *GoogleCloudIdentitytoolkitV1SignInWithEmailLinkRequest) MarshalJSON() ([]byte, error) {
  1987  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithEmailLinkRequest
  1988  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1989  }
  1990  
  1991  // GoogleCloudIdentitytoolkitV1SignInWithEmailLinkResponse: Response message
  1992  // for SignInWithEmailLink.
  1993  type GoogleCloudIdentitytoolkitV1SignInWithEmailLinkResponse struct {
  1994  	// Email: The email the user signed in with. Always present in the response.
  1995  	Email string `json:"email,omitempty"`
  1996  	// ExpiresIn: The number of seconds until the ID token expires.
  1997  	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
  1998  	// IdToken: An Identity Platform ID token for the authenticated user.
  1999  	IdToken string `json:"idToken,omitempty"`
  2000  	// IsNewUser: Whether the authenticated user was created by this request.
  2001  	IsNewUser bool   `json:"isNewUser,omitempty"`
  2002  	Kind      string `json:"kind,omitempty"`
  2003  	// LocalId: The ID of the authenticated user. Always present in the response.
  2004  	LocalId string `json:"localId,omitempty"`
  2005  	// MfaInfo: Info on which multi-factor authentication providers are enabled.
  2006  	// Present if the user needs to complete the sign-in using multi-factor
  2007  	// authentication.
  2008  	MfaInfo []*GoogleCloudIdentitytoolkitV1MfaEnrollment `json:"mfaInfo,omitempty"`
  2009  	// MfaPendingCredential: An opaque string that functions as proof that the user
  2010  	// has successfully passed the first factor check.
  2011  	MfaPendingCredential string `json:"mfaPendingCredential,omitempty"`
  2012  	// RefreshToken: Refresh token for the authenticated user.
  2013  	RefreshToken string `json:"refreshToken,omitempty"`
  2014  
  2015  	// ServerResponse contains the HTTP response code and headers from the server.
  2016  	googleapi.ServerResponse `json:"-"`
  2017  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
  2018  	// include in API requests. By default, fields with empty or default values are
  2019  	// omitted from API requests. See
  2020  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2021  	// details.
  2022  	ForceSendFields []string `json:"-"`
  2023  	// NullFields is a list of field names (e.g. "Email") to include in API
  2024  	// requests with the JSON null value. By default, fields with empty values are
  2025  	// omitted from API requests. See
  2026  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2027  	NullFields []string `json:"-"`
  2028  }
  2029  
  2030  func (s *GoogleCloudIdentitytoolkitV1SignInWithEmailLinkResponse) MarshalJSON() ([]byte, error) {
  2031  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithEmailLinkResponse
  2032  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2033  }
  2034  
  2035  // GoogleCloudIdentitytoolkitV1SignInWithGameCenterRequest: Request message for
  2036  // SignInWithGameCenter
  2037  type GoogleCloudIdentitytoolkitV1SignInWithGameCenterRequest struct {
  2038  	// DisplayName: The user's Game Center display name.
  2039  	DisplayName string `json:"displayName,omitempty"`
  2040  	// GamePlayerId: The user's Game Center game player ID. A unique identifier for
  2041  	// a player of the game.
  2042  	// https://developer.apple.com/documentation/gamekit/gkplayer/3113960-gameplayerid
  2043  	GamePlayerId string `json:"gamePlayerId,omitempty"`
  2044  	// IdToken: A valid ID token for an Identity Platform account. If present, this
  2045  	// request will link the Game Center player ID to the account represented by
  2046  	// this ID token.
  2047  	IdToken string `json:"idToken,omitempty"`
  2048  	// PlayerId: Required. The user's Game Center player ID. Deprecated by Apple.
  2049  	// Pass `playerID` along with `gamePlayerID` and `teamPlayerID` to initiate the
  2050  	// migration of a user's Game Center player ID to `gamePlayerID`.
  2051  	PlayerId string `json:"playerId,omitempty"`
  2052  	// PublicKeyUrl: Required. The URL to fetch the Apple public key in order to
  2053  	// verify the given signature is signed by Apple.
  2054  	PublicKeyUrl string `json:"publicKeyUrl,omitempty"`
  2055  	// Salt: Required. A random string used to generate the given signature.
  2056  	Salt string `json:"salt,omitempty"`
  2057  	// Signature: Required. The verification signature data generated by Apple.
  2058  	Signature string `json:"signature,omitempty"`
  2059  	// TeamPlayerId: The user's Game Center team player ID. A unique identifier for
  2060  	// a player of all the games that you distribute using your developer account.
  2061  	// https://developer.apple.com/documentation/gamekit/gkplayer/3174857-teamplayerid
  2062  	TeamPlayerId string `json:"teamPlayerId,omitempty"`
  2063  	// TenantId: The ID of the Identity Platform tenant the user is signing in to.
  2064  	TenantId string `json:"tenantId,omitempty"`
  2065  	// Timestamp: Required. The time when the signature was created by Apple, in
  2066  	// milliseconds since the epoch.
  2067  	Timestamp int64 `json:"timestamp,omitempty,string"`
  2068  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  2069  	// unconditionally include in API requests. By default, fields with empty or
  2070  	// default values are omitted from API requests. See
  2071  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2072  	// details.
  2073  	ForceSendFields []string `json:"-"`
  2074  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  2075  	// requests with the JSON null value. By default, fields with empty values are
  2076  	// omitted from API requests. See
  2077  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2078  	NullFields []string `json:"-"`
  2079  }
  2080  
  2081  func (s *GoogleCloudIdentitytoolkitV1SignInWithGameCenterRequest) MarshalJSON() ([]byte, error) {
  2082  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithGameCenterRequest
  2083  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2084  }
  2085  
  2086  // GoogleCloudIdentitytoolkitV1SignInWithGameCenterResponse: Response message
  2087  // for SignInWithGameCenter
  2088  type GoogleCloudIdentitytoolkitV1SignInWithGameCenterResponse struct {
  2089  	// DisplayName: Display name of the authenticated user.
  2090  	DisplayName string `json:"displayName,omitempty"`
  2091  	// ExpiresIn: The number of seconds until the ID token expires.
  2092  	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
  2093  	// GamePlayerId: The user's Game Center game player ID. A unique identifier for
  2094  	// a player of the game.
  2095  	// https://developer.apple.com/documentation/gamekit/gkplayer/3113960-gameplayerid
  2096  	GamePlayerId string `json:"gamePlayerId,omitempty"`
  2097  	// IdToken: An Identity Platform ID token for the authenticated user.
  2098  	IdToken string `json:"idToken,omitempty"`
  2099  	// IsNewUser: Whether the logged in user was created by this request.
  2100  	IsNewUser bool `json:"isNewUser,omitempty"`
  2101  	// LocalId: The ID of the authenticated user. Always present in the response.
  2102  	LocalId string `json:"localId,omitempty"`
  2103  	// PlayerId: The user's Game Center player ID. Pass `playerID` along with
  2104  	// `gamePlayerID` and `teamPlayerID` to initiate the migration of a user's Game
  2105  	// Center player ID to `gamePlayerID`.
  2106  	PlayerId string `json:"playerId,omitempty"`
  2107  	// RefreshToken: An Identity Platform refresh token for the authenticated user.
  2108  	RefreshToken string `json:"refreshToken,omitempty"`
  2109  	// TeamPlayerId: The user's Game Center team player ID. A unique identifier for
  2110  	// a player of all the games that you distribute using your developer account.
  2111  	// https://developer.apple.com/documentation/gamekit/gkplayer/3174857-teamplayerid
  2112  	TeamPlayerId string `json:"teamPlayerId,omitempty"`
  2113  
  2114  	// ServerResponse contains the HTTP response code and headers from the server.
  2115  	googleapi.ServerResponse `json:"-"`
  2116  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  2117  	// unconditionally include in API requests. By default, fields with empty or
  2118  	// default values are omitted from API requests. See
  2119  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2120  	// details.
  2121  	ForceSendFields []string `json:"-"`
  2122  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  2123  	// requests with the JSON null value. By default, fields with empty values are
  2124  	// omitted from API requests. See
  2125  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2126  	NullFields []string `json:"-"`
  2127  }
  2128  
  2129  func (s *GoogleCloudIdentitytoolkitV1SignInWithGameCenterResponse) MarshalJSON() ([]byte, error) {
  2130  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithGameCenterResponse
  2131  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2132  }
  2133  
  2134  // GoogleCloudIdentitytoolkitV1SignInWithIdpRequest: Request message for
  2135  // SignInWithIdp.
  2136  type GoogleCloudIdentitytoolkitV1SignInWithIdpRequest struct {
  2137  	AutoCreate             bool  `json:"autoCreate,omitempty"`
  2138  	DelegatedProjectNumber int64 `json:"delegatedProjectNumber,omitempty,string"`
  2139  	// IdToken: A valid Identity Platform ID token. If passed, the user's account
  2140  	// at the IdP will be linked to the account represented by this ID token.
  2141  	IdToken        string `json:"idToken,omitempty"`
  2142  	PendingIdToken string `json:"pendingIdToken,omitempty"`
  2143  	// PendingToken: An opaque string from a previous SignInWithIdp response. If
  2144  	// set, it can be used to repeat the sign-in operation from the previous
  2145  	// SignInWithIdp operation. This may be present if the user needs to confirm
  2146  	// their account information as part of a previous federated login attempt, or
  2147  	// perform account linking.
  2148  	PendingToken string `json:"pendingToken,omitempty"`
  2149  	// PostBody: If the user is signing in with an authorization response obtained
  2150  	// via a previous CreateAuthUri authorization request, this is the body of the
  2151  	// HTTP POST callback from the IdP, if present. Otherwise, if the user is
  2152  	// signing in with a manually provided IdP credential, this should be a
  2153  	// URL-encoded form that contains the credential (e.g. an ID token or access
  2154  	// token for OAuth 2.0 IdPs) and the provider ID of the IdP that issued the
  2155  	// credential. For example, if the user is signing in to the Google provider
  2156  	// using a Google ID token, this should be set to
  2157  	// id_token`=[GOOGLE_ID_TOKEN]&providerId=google.com`, where
  2158  	// `[GOOGLE_ID_TOKEN]` should be replaced with the Google ID token. If the user
  2159  	// is signing in to the Facebook provider using a Facebook authentication
  2160  	// token, this should be set to
  2161  	// id_token`=[FACEBOOK_AUTHENTICATION_TOKEN]&providerId=facebook. com&nonce=
  2162  	// [NONCE]`, where `[FACEBOOK_AUTHENTICATION_TOKEN]` should be replaced with
  2163  	// the Facebook authentication token. Nonce is required for validating the
  2164  	// token. The request will fail if no nonce is provided. If the user is signing
  2165  	// in to the Facebook provider using a Facebook access token, this should be
  2166  	// set to access_token`=[FACEBOOK_ACCESS_TOKEN]&providerId=facebook. com`,
  2167  	// where `[FACEBOOK_ACCESS_TOKEN]` should be replaced with the Facebook access
  2168  	// token. If the user is signing in to the Twitter provider using a Twitter
  2169  	// OAuth 1.0 credential, this should be set to
  2170  	// access_token`=[TWITTER_ACCESS_TOKEN]&oauth_token_secret=
  2171  	// [TWITTER_TOKEN_SECRET]&providerId=twitter.com`, where
  2172  	// `[TWITTER_ACCESS_TOKEN]` and `[TWITTER_TOKEN_SECRET]` should be replaced
  2173  	// with the Twitter OAuth access token and Twitter OAuth token secret
  2174  	// respectively.
  2175  	PostBody string `json:"postBody,omitempty"`
  2176  	// RequestUri: Required. The URL to which the IdP redirects the user back. This
  2177  	// can be set to `http://localhost` if the user is signing in with a manually
  2178  	// provided IdP credential.
  2179  	RequestUri string `json:"requestUri,omitempty"`
  2180  	// ReturnIdpCredential: Whether or not to return OAuth credentials from the IdP
  2181  	// on the following errors: `FEDERATED_USER_ID_ALREADY_LINKED` and
  2182  	// `EMAIL_EXISTS`.
  2183  	ReturnIdpCredential bool `json:"returnIdpCredential,omitempty"`
  2184  	// ReturnRefreshToken: Whether or not to return the OAuth refresh token from
  2185  	// the IdP, if available.
  2186  	ReturnRefreshToken bool `json:"returnRefreshToken,omitempty"`
  2187  	// ReturnSecureToken: Should always be true.
  2188  	ReturnSecureToken bool `json:"returnSecureToken,omitempty"`
  2189  	// SessionId: The session ID returned from a previous CreateAuthUri call. This
  2190  	// field is verified against that session ID to prevent session fixation
  2191  	// attacks. Required if the user is signing in with an authorization response
  2192  	// from a previous CreateAuthUri authorization request.
  2193  	SessionId string `json:"sessionId,omitempty"`
  2194  	// TenantId: The ID of the Identity Platform tenant the user is signing in to.
  2195  	// If not set, the user will sign in to the default Identity Platform project.
  2196  	TenantId string `json:"tenantId,omitempty"`
  2197  	// ForceSendFields is a list of field names (e.g. "AutoCreate") to
  2198  	// unconditionally include in API requests. By default, fields with empty or
  2199  	// default values are omitted from API requests. See
  2200  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2201  	// details.
  2202  	ForceSendFields []string `json:"-"`
  2203  	// NullFields is a list of field names (e.g. "AutoCreate") to include in API
  2204  	// requests with the JSON null value. By default, fields with empty values are
  2205  	// omitted from API requests. See
  2206  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2207  	NullFields []string `json:"-"`
  2208  }
  2209  
  2210  func (s *GoogleCloudIdentitytoolkitV1SignInWithIdpRequest) MarshalJSON() ([]byte, error) {
  2211  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithIdpRequest
  2212  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2213  }
  2214  
  2215  // GoogleCloudIdentitytoolkitV1SignInWithIdpResponse: Response message for
  2216  // SignInWithIdp.
  2217  type GoogleCloudIdentitytoolkitV1SignInWithIdpResponse struct {
  2218  	// Context: The opaque string set in CreateAuthUri that is used to maintain
  2219  	// contextual information between the authentication request and the callback
  2220  	// from the IdP.
  2221  	Context string `json:"context,omitempty"`
  2222  	// DateOfBirth: The date of birth for the user's account at the IdP.
  2223  	DateOfBirth string `json:"dateOfBirth,omitempty"`
  2224  	// DisplayName: The display name for the user's account at the IdP.
  2225  	DisplayName string `json:"displayName,omitempty"`
  2226  	// Email: The email address of the user's account at the IdP.
  2227  	Email string `json:"email,omitempty"`
  2228  	// EmailRecycled: Whether or not there is an existing Identity Platform user
  2229  	// account with the same email address but linked to a different account at the
  2230  	// same IdP. Only present if the "One account per email address" setting is
  2231  	// enabled and the email address at the IdP is verified.
  2232  	EmailRecycled bool `json:"emailRecycled,omitempty"`
  2233  	// EmailVerified: Whether the user account's email address is verified.
  2234  	EmailVerified bool `json:"emailVerified,omitempty"`
  2235  	// ErrorMessage: The error message returned if `return_idp_credential` is set
  2236  	// to `true` and either the `FEDERATED_USER_ID_ALREADY_LINKED` or
  2237  	// `EMAIL_EXISTS` error is encountered. This field's value is either
  2238  	// `FEDERATED_USER_ID_ALREADY_LINKED` or `EMAIL_EXISTS`.
  2239  	ErrorMessage string `json:"errorMessage,omitempty"`
  2240  	// ExpiresIn: The number of seconds until the Identity Platform ID token
  2241  	// expires.
  2242  	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
  2243  	// FederatedId: The user's account ID at the IdP. Always present in the
  2244  	// response.
  2245  	FederatedId string `json:"federatedId,omitempty"`
  2246  	// FirstName: The first name for the user's account at the IdP.
  2247  	FirstName string `json:"firstName,omitempty"`
  2248  	// FullName: The full name for the user's account at the IdP.
  2249  	FullName string `json:"fullName,omitempty"`
  2250  	// IdToken: An Identity Platform ID token for the authenticated user.
  2251  	IdToken    string `json:"idToken,omitempty"`
  2252  	InputEmail string `json:"inputEmail,omitempty"`
  2253  	// IsNewUser: Whether or not a new Identity Platform account was created for
  2254  	// the authenticated user.
  2255  	IsNewUser bool   `json:"isNewUser,omitempty"`
  2256  	Kind      string `json:"kind,omitempty"`
  2257  	// Language: The language preference for the user's account at the IdP.
  2258  	Language string `json:"language,omitempty"`
  2259  	// LastName: The last name for the user's account at the IdP.
  2260  	LastName string `json:"lastName,omitempty"`
  2261  	// LocalId: The ID of the authenticated Identity Platform user. Always present
  2262  	// in the response.
  2263  	LocalId string `json:"localId,omitempty"`
  2264  	// MfaInfo: Info on which multi-factor authentication providers are enabled for
  2265  	// the account. Present if the user needs to complete the sign-in using
  2266  	// multi-factor authentication.
  2267  	MfaInfo []*GoogleCloudIdentitytoolkitV1MfaEnrollment `json:"mfaInfo,omitempty"`
  2268  	// MfaPendingCredential: An opaque string that functions as proof that the user
  2269  	// has successfully passed the first factor authentication.
  2270  	MfaPendingCredential string `json:"mfaPendingCredential,omitempty"`
  2271  	// NeedConfirmation: Whether or not there is an existing Identity Platform user
  2272  	// account with the same email address as the current account signed in at the
  2273  	// IdP, and the account's email address is not verified at the IdP. The user
  2274  	// will need to sign in to the existing Identity Platform account and then link
  2275  	// the current credential from the IdP to it. Only present if the "One account
  2276  	// per email address" setting is enabled.
  2277  	NeedConfirmation bool `json:"needConfirmation,omitempty"`
  2278  	NeedEmail        bool `json:"needEmail,omitempty"`
  2279  	// NickName: The nickname for the user's account at the IdP.
  2280  	NickName string `json:"nickName,omitempty"`
  2281  	// OauthAccessToken: The OAuth access token from the IdP, if available.
  2282  	OauthAccessToken string `json:"oauthAccessToken,omitempty"`
  2283  	// OauthAuthorizationCode: The OAuth 2.0 authorization code, if available. Only
  2284  	// present for the Google provider.
  2285  	OauthAuthorizationCode string `json:"oauthAuthorizationCode,omitempty"`
  2286  	// OauthExpireIn: The number of seconds until the OAuth access token from the
  2287  	// IdP expires.
  2288  	OauthExpireIn int64 `json:"oauthExpireIn,omitempty"`
  2289  	// OauthIdToken: The OpenID Connect ID token from the IdP, if available.
  2290  	OauthIdToken string `json:"oauthIdToken,omitempty"`
  2291  	// OauthRefreshToken: The OAuth 2.0 refresh token from the IdP, if available
  2292  	// and `return_refresh_token` is set to `true`.
  2293  	OauthRefreshToken string `json:"oauthRefreshToken,omitempty"`
  2294  	// OauthTokenSecret: The OAuth 1.0 token secret from the IdP, if available.
  2295  	// Only present for the Twitter provider.
  2296  	OauthTokenSecret string `json:"oauthTokenSecret,omitempty"`
  2297  	// OriginalEmail: The main (top-level) email address of the user's Identity
  2298  	// Platform account, if different from the email address at the IdP. Only
  2299  	// present if the "One account per email address" setting is enabled.
  2300  	OriginalEmail string `json:"originalEmail,omitempty"`
  2301  	// PendingToken: An opaque string that can be used as a credential from the IdP
  2302  	// the user is signing into. The pending token obtained here can be set in a
  2303  	// future SignInWithIdp request to sign the same user in with the IdP again.
  2304  	PendingToken string `json:"pendingToken,omitempty"`
  2305  	// PhotoUrl: The URL of the user's profile picture at the IdP.
  2306  	PhotoUrl string `json:"photoUrl,omitempty"`
  2307  	// ProviderId: The provider ID of the IdP that the user is signing in to.
  2308  	// Always present in the response.
  2309  	ProviderId string `json:"providerId,omitempty"`
  2310  	// RawUserInfo: The stringified JSON response containing all the data
  2311  	// corresponding to the user's account at the IdP.
  2312  	RawUserInfo string `json:"rawUserInfo,omitempty"`
  2313  	// RefreshToken: An Identity Platform refresh token for the authenticated user.
  2314  	RefreshToken string `json:"refreshToken,omitempty"`
  2315  	// ScreenName: The screen name for the user's account at the Twitter IdP or the
  2316  	// login name for the user's account at the GitHub IdP.
  2317  	ScreenName string `json:"screenName,omitempty"`
  2318  	// TenantId: The value of the `tenant_id` field in the request.
  2319  	TenantId string `json:"tenantId,omitempty"`
  2320  	// TimeZone: The time zone for the user's account at the IdP.
  2321  	TimeZone string `json:"timeZone,omitempty"`
  2322  	// VerifiedProvider: A list of provider IDs that the user can sign in to in
  2323  	// order to resolve a `need_confirmation` error. Only present if
  2324  	// `need_confirmation` is set to `true`.
  2325  	VerifiedProvider []string `json:"verifiedProvider,omitempty"`
  2326  
  2327  	// ServerResponse contains the HTTP response code and headers from the server.
  2328  	googleapi.ServerResponse `json:"-"`
  2329  	// ForceSendFields is a list of field names (e.g. "Context") to unconditionally
  2330  	// include in API requests. By default, fields with empty or default values are
  2331  	// omitted from API requests. See
  2332  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2333  	// details.
  2334  	ForceSendFields []string `json:"-"`
  2335  	// NullFields is a list of field names (e.g. "Context") to include in API
  2336  	// requests with the JSON null value. By default, fields with empty values are
  2337  	// omitted from API requests. See
  2338  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2339  	NullFields []string `json:"-"`
  2340  }
  2341  
  2342  func (s *GoogleCloudIdentitytoolkitV1SignInWithIdpResponse) MarshalJSON() ([]byte, error) {
  2343  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithIdpResponse
  2344  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2345  }
  2346  
  2347  // GoogleCloudIdentitytoolkitV1SignInWithPasswordRequest: Request message for
  2348  // SignInWithPassword.
  2349  type GoogleCloudIdentitytoolkitV1SignInWithPasswordRequest struct {
  2350  	CaptchaChallenge string `json:"captchaChallenge,omitempty"`
  2351  	// CaptchaResponse: The reCAPTCHA token provided by the reCAPTCHA client-side
  2352  	// integration. reCAPTCHA Enterprise uses it for risk assessment. Required when
  2353  	// reCAPTCHA Enterprise is enabled.
  2354  	CaptchaResponse string `json:"captchaResponse,omitempty"`
  2355  	// ClientType: The client type, web, android or ios. Required when reCAPTCHA
  2356  	// Enterprise is enabled.
  2357  	//
  2358  	// Possible values:
  2359  	//   "CLIENT_TYPE_UNSPECIFIED" - Client type is not specified.
  2360  	//   "CLIENT_TYPE_WEB" - Client type is web.
  2361  	//   "CLIENT_TYPE_ANDROID" - Client type is android.
  2362  	//   "CLIENT_TYPE_IOS" - Client type is ios.
  2363  	ClientType             string `json:"clientType,omitempty"`
  2364  	DelegatedProjectNumber int64  `json:"delegatedProjectNumber,omitempty,string"`
  2365  	// Email: Required. The email the user is signing in with. The length of email
  2366  	// should be less than 256 characters and in the format of `name@domain.tld`.
  2367  	// The email should also match the RFC 822 (https://tools.ietf.org/html/rfc822)
  2368  	// addr-spec production.
  2369  	Email      string `json:"email,omitempty"`
  2370  	IdToken    string `json:"idToken,omitempty"`
  2371  	InstanceId string `json:"instanceId,omitempty"`
  2372  	// Password: Required. The password the user provides to sign in to the
  2373  	// account.
  2374  	Password       string `json:"password,omitempty"`
  2375  	PendingIdToken string `json:"pendingIdToken,omitempty"`
  2376  	// RecaptchaVersion: The reCAPTCHA version of the reCAPTCHA token in the
  2377  	// captcha_response.
  2378  	//
  2379  	// Possible values:
  2380  	//   "RECAPTCHA_VERSION_UNSPECIFIED" - The reCAPTCHA version is not specified.
  2381  	//   "RECAPTCHA_ENTERPRISE" - The reCAPTCHA enterprise.
  2382  	RecaptchaVersion string `json:"recaptchaVersion,omitempty"`
  2383  	// ReturnSecureToken: Should always be true.
  2384  	ReturnSecureToken bool `json:"returnSecureToken,omitempty"`
  2385  	// TenantId: The ID of the Identity Platform tenant the user is signing in to.
  2386  	// If not set, the user will sign in to the default Identity Platform instance
  2387  	// in the project.
  2388  	TenantId string `json:"tenantId,omitempty"`
  2389  	// ForceSendFields is a list of field names (e.g. "CaptchaChallenge") to
  2390  	// unconditionally include in API requests. By default, fields with empty or
  2391  	// default values are omitted from API requests. See
  2392  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2393  	// details.
  2394  	ForceSendFields []string `json:"-"`
  2395  	// NullFields is a list of field names (e.g. "CaptchaChallenge") to include in
  2396  	// API requests with the JSON null value. By default, fields with empty values
  2397  	// are omitted from API requests. See
  2398  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2399  	NullFields []string `json:"-"`
  2400  }
  2401  
  2402  func (s *GoogleCloudIdentitytoolkitV1SignInWithPasswordRequest) MarshalJSON() ([]byte, error) {
  2403  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithPasswordRequest
  2404  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2405  }
  2406  
  2407  // GoogleCloudIdentitytoolkitV1SignInWithPasswordResponse: Response message for
  2408  // SignInWithPassword.
  2409  type GoogleCloudIdentitytoolkitV1SignInWithPasswordResponse struct {
  2410  	// DisplayName: The user's display name stored in the account's attributes.
  2411  	DisplayName string `json:"displayName,omitempty"`
  2412  	// Email: The email of the authenticated user. Always present in the response.
  2413  	Email string `json:"email,omitempty"`
  2414  	// ExpiresIn: The number of seconds until the Identity Platform ID token
  2415  	// expires.
  2416  	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
  2417  	// IdToken: An Identity Platform ID token for the authenticated user.
  2418  	IdToken string `json:"idToken,omitempty"`
  2419  	Kind    string `json:"kind,omitempty"`
  2420  	// LocalId: The ID of the authenticated user. Always present in the response.
  2421  	LocalId string `json:"localId,omitempty"`
  2422  	// MfaInfo: Info on which multi-factor authentication providers are enabled for
  2423  	// the account. Present if the user needs to complete the sign-in using
  2424  	// multi-factor authentication.
  2425  	MfaInfo []*GoogleCloudIdentitytoolkitV1MfaEnrollment `json:"mfaInfo,omitempty"`
  2426  	// MfaPendingCredential: An opaque string that functions as proof that the user
  2427  	// has successfully passed the first factor authentication.
  2428  	MfaPendingCredential string `json:"mfaPendingCredential,omitempty"`
  2429  	// OauthAccessToken: The OAuth2 access token.
  2430  	OauthAccessToken       string `json:"oauthAccessToken,omitempty"`
  2431  	OauthAuthorizationCode string `json:"oauthAuthorizationCode,omitempty"`
  2432  	// OauthExpireIn: The access token expiration time in seconds.
  2433  	OauthExpireIn int64 `json:"oauthExpireIn,omitempty"`
  2434  	// ProfilePicture: The user's profile picture stored in the account's
  2435  	// attributes.
  2436  	ProfilePicture string `json:"profilePicture,omitempty"`
  2437  	// RefreshToken: An Identity Platform refresh token for the authenticated user.
  2438  	RefreshToken string `json:"refreshToken,omitempty"`
  2439  	// Registered: Whether the email is for an existing account. Always true.
  2440  	Registered bool `json:"registered,omitempty"`
  2441  	// UserNotifications: Warning notifications for the user.
  2442  	UserNotifications []*GoogleCloudIdentitytoolkitV1UserNotification `json:"userNotifications,omitempty"`
  2443  
  2444  	// ServerResponse contains the HTTP response code and headers from the server.
  2445  	googleapi.ServerResponse `json:"-"`
  2446  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  2447  	// unconditionally include in API requests. By default, fields with empty or
  2448  	// default values are omitted from API requests. See
  2449  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2450  	// details.
  2451  	ForceSendFields []string `json:"-"`
  2452  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  2453  	// requests with the JSON null value. By default, fields with empty values are
  2454  	// omitted from API requests. See
  2455  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2456  	NullFields []string `json:"-"`
  2457  }
  2458  
  2459  func (s *GoogleCloudIdentitytoolkitV1SignInWithPasswordResponse) MarshalJSON() ([]byte, error) {
  2460  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithPasswordResponse
  2461  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2462  }
  2463  
  2464  // GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberRequest: Request message
  2465  // for SignInWithPhoneNumber.
  2466  type GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberRequest struct {
  2467  	// Code: User-entered verification code from an SMS sent to the user's phone.
  2468  	Code string `json:"code,omitempty"`
  2469  	// IdToken: A valid ID token for an Identity Platform account. If passed, this
  2470  	// request will link the phone number to the user represented by this ID token
  2471  	// if the phone number is not in use, or will reauthenticate the user if the
  2472  	// phone number is already linked to the user.
  2473  	IdToken string `json:"idToken,omitempty"`
  2474  	// Possible values:
  2475  	//   "VERIFY_OP_UNSPECIFIED" - Operation is not specified.
  2476  	//   "SIGN_UP_OR_IN" - Verify operation is to sign up/sign in.
  2477  	//   "REAUTH" - Verify operation is to reauth.
  2478  	//   "UPDATE" - Verify operation is to update.
  2479  	//   "LINK" - Verify operation is to link.
  2480  	Operation string `json:"operation,omitempty"`
  2481  	// PhoneNumber: The user's phone number to sign in with. This is necessary in
  2482  	// the case of uing a temporary proof, in which case it must match the phone
  2483  	// number that was authenticated in the request that generated the temporary
  2484  	// proof. This field is ignored if a session info is passed.
  2485  	PhoneNumber string `json:"phoneNumber,omitempty"`
  2486  	// SessionInfo: Encrypted session information from the response of
  2487  	// sendVerificationCode. In the case of authenticating with an SMS code this
  2488  	// must be specified, but in the case of using a temporary proof it can be
  2489  	// unspecified.
  2490  	SessionInfo string `json:"sessionInfo,omitempty"`
  2491  	// TemporaryProof: A proof of the phone number verification, provided from a
  2492  	// previous signInWithPhoneNumber request. If this is passed, the caller must
  2493  	// also pass in the phone_number field the phone number that was verified in
  2494  	// the previous request.
  2495  	TemporaryProof string `json:"temporaryProof,omitempty"`
  2496  	// TenantId: The ID of the Identity Platform tenant the user is signing in to.
  2497  	// If not set, the user will sign in to the default Identity Platform project.
  2498  	TenantId string `json:"tenantId,omitempty"`
  2499  	// VerificationProof: Do not use.
  2500  	VerificationProof string `json:"verificationProof,omitempty"`
  2501  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  2502  	// include in API requests. By default, fields with empty or default values are
  2503  	// omitted from API requests. See
  2504  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2505  	// details.
  2506  	ForceSendFields []string `json:"-"`
  2507  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  2508  	// with the JSON null value. By default, fields with empty values are omitted
  2509  	// from API requests. See
  2510  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2511  	NullFields []string `json:"-"`
  2512  }
  2513  
  2514  func (s *GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberRequest) MarshalJSON() ([]byte, error) {
  2515  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberRequest
  2516  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2517  }
  2518  
  2519  // GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberResponse: Response message
  2520  // for SignInWithPhoneNumber.
  2521  type GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberResponse struct {
  2522  	// ExpiresIn: The number of seconds until the ID token expires.
  2523  	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
  2524  	// IdToken: Identity Platform ID token for the authenticated user.
  2525  	IdToken string `json:"idToken,omitempty"`
  2526  	// IsNewUser: Whether the authenticated user was created by this request.
  2527  	IsNewUser bool `json:"isNewUser,omitempty"`
  2528  	// LocalId: The id of the authenticated user. Present in the case of a
  2529  	// successful authentication. In the case when the phone could be verified but
  2530  	// the account operation could not be performed, a temporary proof will be
  2531  	// returned instead.
  2532  	LocalId string `json:"localId,omitempty"`
  2533  	// PhoneNumber: Phone number of the authenticated user. Always present in the
  2534  	// response.
  2535  	PhoneNumber string `json:"phoneNumber,omitempty"`
  2536  	// RefreshToken: Refresh token for the authenticated user.
  2537  	RefreshToken string `json:"refreshToken,omitempty"`
  2538  	// TemporaryProof: A proof of the phone number verification, provided if a
  2539  	// phone authentication is successful but the user operation fails. This
  2540  	// happens when the request tries to link a phone number to a user with an ID
  2541  	// token or reauthenticate with an ID token but the phone number is linked to a
  2542  	// different user.
  2543  	TemporaryProof string `json:"temporaryProof,omitempty"`
  2544  	// TemporaryProofExpiresIn: The number of seconds until the temporary proof
  2545  	// expires.
  2546  	TemporaryProofExpiresIn int64 `json:"temporaryProofExpiresIn,omitempty,string"`
  2547  	// VerificationProof: Do not use.
  2548  	VerificationProof string `json:"verificationProof,omitempty"`
  2549  	// VerificationProofExpiresIn: Do not use.
  2550  	VerificationProofExpiresIn int64 `json:"verificationProofExpiresIn,omitempty,string"`
  2551  
  2552  	// ServerResponse contains the HTTP response code and headers from the server.
  2553  	googleapi.ServerResponse `json:"-"`
  2554  	// ForceSendFields is a list of field names (e.g. "ExpiresIn") to
  2555  	// unconditionally include in API requests. By default, fields with empty or
  2556  	// default values are omitted from API requests. See
  2557  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2558  	// details.
  2559  	ForceSendFields []string `json:"-"`
  2560  	// NullFields is a list of field names (e.g. "ExpiresIn") to include in API
  2561  	// requests with the JSON null value. By default, fields with empty values are
  2562  	// omitted from API requests. See
  2563  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2564  	NullFields []string `json:"-"`
  2565  }
  2566  
  2567  func (s *GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberResponse) MarshalJSON() ([]byte, error) {
  2568  	type NoMethod GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberResponse
  2569  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2570  }
  2571  
  2572  // GoogleCloudIdentitytoolkitV1SignUpRequest: Request message for SignUp.
  2573  type GoogleCloudIdentitytoolkitV1SignUpRequest struct {
  2574  	CaptchaChallenge string `json:"captchaChallenge,omitempty"`
  2575  	// CaptchaResponse: The reCAPTCHA token provided by the reCAPTCHA client-side
  2576  	// integration. reCAPTCHA Enterprise uses it for assessment. Required when
  2577  	// reCAPTCHA enterprise is enabled.
  2578  	CaptchaResponse string `json:"captchaResponse,omitempty"`
  2579  	// ClientType: The client type: web, Android or iOS. Required when enabling
  2580  	// reCAPTCHA enterprise protection.
  2581  	//
  2582  	// Possible values:
  2583  	//   "CLIENT_TYPE_UNSPECIFIED" - Client type is not specified.
  2584  	//   "CLIENT_TYPE_WEB" - Client type is web.
  2585  	//   "CLIENT_TYPE_ANDROID" - Client type is android.
  2586  	//   "CLIENT_TYPE_IOS" - Client type is ios.
  2587  	ClientType string `json:"clientType,omitempty"`
  2588  	// Disabled: Whether the user will be disabled upon creation. Disabled accounts
  2589  	// are inaccessible except for requests bearing a Google OAuth2 credential with
  2590  	// proper permissions
  2591  	// (https://cloud.google.com/identity-platform/docs/access-control).
  2592  	Disabled bool `json:"disabled,omitempty"`
  2593  	// DisplayName: The display name of the user to be created.
  2594  	DisplayName string `json:"displayName,omitempty"`
  2595  	// Email: The email to assign to the created user. The length of the email
  2596  	// should be less than 256 characters and in the format of `name@domain.tld`.
  2597  	// The email should also match the RFC 822 (https://tools.ietf.org/html/rfc822)
  2598  	// addr-spec production. An anonymous user will be created if not provided.
  2599  	Email string `json:"email,omitempty"`
  2600  	// EmailVerified: Whether the user's email is verified. Specifying this field
  2601  	// requires a Google OAuth 2.0 credential with the proper permissions
  2602  	// (https://cloud.google.com/identity-platform/docs/access-control).
  2603  	EmailVerified bool `json:"emailVerified,omitempty"`
  2604  	// IdToken: A valid ID token for an Identity Platform user. If set, this
  2605  	// request will link the authentication credential to the user represented by
  2606  	// this ID token. For a non-admin request, both the `email` and `password`
  2607  	// fields must be set. For an admin request, `local_id` must not be set.
  2608  	IdToken    string `json:"idToken,omitempty"`
  2609  	InstanceId string `json:"instanceId,omitempty"`
  2610  	// LocalId: The ID of the user to create. The ID must be unique within the
  2611  	// project that the user is being created under. Specifying this field requires
  2612  	// a Google OAuth 2.0 credential with the proper permissions
  2613  	// (https://cloud.google.com/identity-platform/docs/access-control).
  2614  	LocalId string `json:"localId,omitempty"`
  2615  	// MfaInfo: The multi-factor authentication providers for the user to create.
  2616  	MfaInfo []*GoogleCloudIdentitytoolkitV1MfaFactor `json:"mfaInfo,omitempty"`
  2617  	// Password: The password to assign to the created user. The password must be
  2618  	// be at least 6 characters long. If set, the `email` field must also be set.
  2619  	Password string `json:"password,omitempty"`
  2620  	// PhoneNumber: The phone number of the user to create. Specifying this field
  2621  	// requires a Google OAuth 2.0 credential with the proper permissions
  2622  	// (https://cloud.google.com/identity-platform/docs/access-control).
  2623  	PhoneNumber string `json:"phoneNumber,omitempty"`
  2624  	// PhotoUrl: The profile photo url of the user to create.
  2625  	PhotoUrl string `json:"photoUrl,omitempty"`
  2626  	// RecaptchaVersion: The reCAPTCHA version of the reCAPTCHA token in the
  2627  	// captcha_response.
  2628  	//
  2629  	// Possible values:
  2630  	//   "RECAPTCHA_VERSION_UNSPECIFIED" - The reCAPTCHA version is not specified.
  2631  	//   "RECAPTCHA_ENTERPRISE" - The reCAPTCHA enterprise.
  2632  	RecaptchaVersion string `json:"recaptchaVersion,omitempty"`
  2633  	// TargetProjectId: The project ID of the project which the user should belong
  2634  	// to. Specifying this field requires a Google OAuth 2.0 credential with the
  2635  	// proper permissions
  2636  	// (https://cloud.google.com/identity-platform/docs/access-control). If this is
  2637  	// not set, the target project is inferred from the scope associated to the
  2638  	// Bearer access token.
  2639  	TargetProjectId string `json:"targetProjectId,omitempty"`
  2640  	// TenantId: The ID of the Identity Platform tenant to create a user under. If
  2641  	// not set, the user will be created under the default Identity Platform
  2642  	// project.
  2643  	TenantId string `json:"tenantId,omitempty"`
  2644  	// ForceSendFields is a list of field names (e.g. "CaptchaChallenge") to
  2645  	// unconditionally include in API requests. By default, fields with empty or
  2646  	// default values are omitted from API requests. See
  2647  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2648  	// details.
  2649  	ForceSendFields []string `json:"-"`
  2650  	// NullFields is a list of field names (e.g. "CaptchaChallenge") to include in
  2651  	// API requests with the JSON null value. By default, fields with empty values
  2652  	// are omitted from API requests. See
  2653  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2654  	NullFields []string `json:"-"`
  2655  }
  2656  
  2657  func (s *GoogleCloudIdentitytoolkitV1SignUpRequest) MarshalJSON() ([]byte, error) {
  2658  	type NoMethod GoogleCloudIdentitytoolkitV1SignUpRequest
  2659  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2660  }
  2661  
  2662  // GoogleCloudIdentitytoolkitV1SignUpResponse: Response message for SignUp.
  2663  type GoogleCloudIdentitytoolkitV1SignUpResponse struct {
  2664  	// DisplayName: The created user's display name.
  2665  	DisplayName string `json:"displayName,omitempty"`
  2666  	// Email: The created user's email.
  2667  	Email string `json:"email,omitempty"`
  2668  	// ExpiresIn: The number of seconds until the ID token expires.
  2669  	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
  2670  	// IdToken: An Identity Platform ID token for the created user. This field is
  2671  	// only set for non-admin requests.
  2672  	IdToken string `json:"idToken,omitempty"`
  2673  	Kind    string `json:"kind,omitempty"`
  2674  	// LocalId: The ID of the created user. Always present in the response.
  2675  	LocalId string `json:"localId,omitempty"`
  2676  	// RefreshToken: An Identity Platform refresh token for the created user. This
  2677  	// field is only set for non-admin requests.
  2678  	RefreshToken string `json:"refreshToken,omitempty"`
  2679  
  2680  	// ServerResponse contains the HTTP response code and headers from the server.
  2681  	googleapi.ServerResponse `json:"-"`
  2682  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  2683  	// unconditionally include in API requests. By default, fields with empty or
  2684  	// default values are omitted from API requests. See
  2685  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2686  	// details.
  2687  	ForceSendFields []string `json:"-"`
  2688  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  2689  	// requests with the JSON null value. By default, fields with empty values are
  2690  	// omitted from API requests. See
  2691  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2692  	NullFields []string `json:"-"`
  2693  }
  2694  
  2695  func (s *GoogleCloudIdentitytoolkitV1SignUpResponse) MarshalJSON() ([]byte, error) {
  2696  	type NoMethod GoogleCloudIdentitytoolkitV1SignUpResponse
  2697  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2698  }
  2699  
  2700  // GoogleCloudIdentitytoolkitV1SqlExpression: Query conditions used to filter
  2701  // results.
  2702  type GoogleCloudIdentitytoolkitV1SqlExpression struct {
  2703  	// Email: A case insensitive string that the account's email should match. Only
  2704  	// one of `email`, `phone_number`, or `user_id` should be specified in a
  2705  	// SqlExpression. If more than one is specified, only the first (in that order)
  2706  	// will be applied.
  2707  	Email string `json:"email,omitempty"`
  2708  	// PhoneNumber: A string that the account's phone number should match. Only one
  2709  	// of `email`, `phone_number`, or `user_id` should be specified in a
  2710  	// SqlExpression. If more than one is specified, only the first (in that order)
  2711  	// will be applied.
  2712  	PhoneNumber string `json:"phoneNumber,omitempty"`
  2713  	// UserId: A string that the account's local ID should match. Only one of
  2714  	// `email`, `phone_number`, or `user_id` should be specified in a SqlExpression
  2715  	// If more than one is specified, only the first (in that order) will be
  2716  	// applied.
  2717  	UserId string `json:"userId,omitempty"`
  2718  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
  2719  	// include in API requests. By default, fields with empty or default values are
  2720  	// omitted from API requests. See
  2721  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2722  	// details.
  2723  	ForceSendFields []string `json:"-"`
  2724  	// NullFields is a list of field names (e.g. "Email") to include in API
  2725  	// requests with the JSON null value. By default, fields with empty values are
  2726  	// omitted from API requests. See
  2727  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2728  	NullFields []string `json:"-"`
  2729  }
  2730  
  2731  func (s *GoogleCloudIdentitytoolkitV1SqlExpression) MarshalJSON() ([]byte, error) {
  2732  	type NoMethod GoogleCloudIdentitytoolkitV1SqlExpression
  2733  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2734  }
  2735  
  2736  // GoogleCloudIdentitytoolkitV1TotpInfo: Information about TOTP MFA.
  2737  type GoogleCloudIdentitytoolkitV1TotpInfo struct {
  2738  }
  2739  
  2740  // GoogleCloudIdentitytoolkitV1UploadAccountRequest: Request message for
  2741  // UploadAccount.
  2742  type GoogleCloudIdentitytoolkitV1UploadAccountRequest struct {
  2743  	// AllowOverwrite: Whether to overwrite an existing account in Identity
  2744  	// Platform with a matching `local_id` in the request. If true, the existing
  2745  	// account will be overwritten. If false, an error will be returned.
  2746  	AllowOverwrite bool `json:"allowOverwrite,omitempty"`
  2747  	// Argon2Parameters: The parameters for Argon2 hashing algorithm.
  2748  	Argon2Parameters *GoogleCloudIdentitytoolkitV1Argon2Parameters `json:"argon2Parameters,omitempty"`
  2749  	// BlockSize: The block size parameter used by the STANDARD_SCRYPT hashing
  2750  	// function. This parameter, along with parallelization and cpu_mem_cost help
  2751  	// tune the resources needed to hash a password, and should be tuned as
  2752  	// processor speeds and memory technologies advance.
  2753  	BlockSize int64 `json:"blockSize,omitempty"`
  2754  	// CpuMemCost: The CPU memory cost parameter to be used by the STANDARD_SCRYPT
  2755  	// hashing function. This parameter, along with block_size and cpu_mem_cost
  2756  	// help tune the resources needed to hash a password, and should be tuned as
  2757  	// processor speeds and memory technologies advance.
  2758  	CpuMemCost             int64 `json:"cpuMemCost,omitempty"`
  2759  	DelegatedProjectNumber int64 `json:"delegatedProjectNumber,omitempty,string"`
  2760  	// DkLen: The desired key length for the STANDARD_SCRYPT hashing function. Must
  2761  	// be at least 1.
  2762  	DkLen int64 `json:"dkLen,omitempty"`
  2763  	// HashAlgorithm: Required. The hashing function used to hash the account
  2764  	// passwords. Must be one of the following: * HMAC_SHA256 * HMAC_SHA1 *
  2765  	// HMAC_MD5 * SCRYPT * PBKDF_SHA1 * MD5 * HMAC_SHA512 * SHA1 * BCRYPT *
  2766  	// PBKDF2_SHA256 * SHA256 * SHA512 * STANDARD_SCRYPT * ARGON2
  2767  	HashAlgorithm string `json:"hashAlgorithm,omitempty"`
  2768  	// MemoryCost: Memory cost for hash calculation. Only required when the hashing
  2769  	// function is SCRYPT.
  2770  	MemoryCost int64 `json:"memoryCost,omitempty"`
  2771  	// Parallelization: The parallelization cost parameter to be used by the
  2772  	// STANDARD_SCRYPT hashing function. This parameter, along with block_size and
  2773  	// cpu_mem_cost help tune the resources needed to hash a password, and should
  2774  	// be tuned as processor speeds and memory technologies advance.
  2775  	Parallelization int64 `json:"parallelization,omitempty"`
  2776  	// PasswordHashOrder: Password and salt order when verify password.
  2777  	//
  2778  	// Possible values:
  2779  	//   "UNSPECIFIED_ORDER" - The order is not specified.
  2780  	//   "SALT_AND_PASSWORD" - The order is salt first, and then password.
  2781  	//   "PASSWORD_AND_SALT" - The order is password first, and then salt.
  2782  	PasswordHashOrder string `json:"passwordHashOrder,omitempty"`
  2783  	// Rounds: The number of rounds used for hash calculation. Only required for
  2784  	// the following hashing functions: * MD5 * SHA1 * SHA256 * SHA512 * PBKDF_SHA1
  2785  	// * PBKDF2_SHA256 * SCRYPT
  2786  	Rounds int64 `json:"rounds,omitempty"`
  2787  	// SaltSeparator: One or more bytes to be inserted between the salt and plain
  2788  	// text password. For stronger security, this should be a single non-printable
  2789  	// character.
  2790  	SaltSeparator string `json:"saltSeparator,omitempty"`
  2791  	// SanityCheck: If true, the service will do the following list of checks
  2792  	// before an account is uploaded: * Duplicate emails * Duplicate federated IDs
  2793  	// * Federated ID provider validation If the duplication exists within the list
  2794  	// of accounts to be uploaded, it will prevent the entire list from being
  2795  	// uploaded. If the email or federated ID is a duplicate of a user already
  2796  	// within the project/tenant, the account will not be uploaded, but the rest of
  2797  	// the accounts will be unaffected. If false, these checks will be skipped.
  2798  	SanityCheck bool `json:"sanityCheck,omitempty"`
  2799  	// SignerKey: The signer key used to hash the password. Required for the
  2800  	// following hashing functions: * SCRYPT, * HMAC_MD5, * HMAC_SHA1, *
  2801  	// HMAC_SHA256, * HMAC_SHA512
  2802  	SignerKey string `json:"signerKey,omitempty"`
  2803  	// TenantId: The ID of the Identity Platform tenant the account belongs to.
  2804  	TenantId string `json:"tenantId,omitempty"`
  2805  	// Users: A list of accounts to upload. `local_id` is required for each user;
  2806  	// everything else is optional.
  2807  	Users []*GoogleCloudIdentitytoolkitV1UserInfo `json:"users,omitempty"`
  2808  	// ForceSendFields is a list of field names (e.g. "AllowOverwrite") to
  2809  	// unconditionally include in API requests. By default, fields with empty or
  2810  	// default values are omitted from API requests. See
  2811  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2812  	// details.
  2813  	ForceSendFields []string `json:"-"`
  2814  	// NullFields is a list of field names (e.g. "AllowOverwrite") to include in
  2815  	// API requests with the JSON null value. By default, fields with empty values
  2816  	// are omitted from API requests. See
  2817  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2818  	NullFields []string `json:"-"`
  2819  }
  2820  
  2821  func (s *GoogleCloudIdentitytoolkitV1UploadAccountRequest) MarshalJSON() ([]byte, error) {
  2822  	type NoMethod GoogleCloudIdentitytoolkitV1UploadAccountRequest
  2823  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2824  }
  2825  
  2826  // GoogleCloudIdentitytoolkitV1UploadAccountResponse: Response message for
  2827  // UploadAccount.
  2828  type GoogleCloudIdentitytoolkitV1UploadAccountResponse struct {
  2829  	// Error: Detailed error info for accounts that cannot be uploaded.
  2830  	Error []*GoogleCloudIdentitytoolkitV1ErrorInfo `json:"error,omitempty"`
  2831  	Kind  string                                   `json:"kind,omitempty"`
  2832  
  2833  	// ServerResponse contains the HTTP response code and headers from the server.
  2834  	googleapi.ServerResponse `json:"-"`
  2835  	// ForceSendFields is a list of field names (e.g. "Error") to unconditionally
  2836  	// include in API requests. By default, fields with empty or default values are
  2837  	// omitted from API requests. See
  2838  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2839  	// details.
  2840  	ForceSendFields []string `json:"-"`
  2841  	// NullFields is a list of field names (e.g. "Error") to include in API
  2842  	// requests with the JSON null value. By default, fields with empty values are
  2843  	// omitted from API requests. See
  2844  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2845  	NullFields []string `json:"-"`
  2846  }
  2847  
  2848  func (s *GoogleCloudIdentitytoolkitV1UploadAccountResponse) MarshalJSON() ([]byte, error) {
  2849  	type NoMethod GoogleCloudIdentitytoolkitV1UploadAccountResponse
  2850  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2851  }
  2852  
  2853  // GoogleCloudIdentitytoolkitV1UserInfo: An Identity Platform account's
  2854  // information.
  2855  type GoogleCloudIdentitytoolkitV1UserInfo struct {
  2856  	// CreatedAt: The time, in milliseconds from epoch, when the account was
  2857  	// created.
  2858  	CreatedAt int64 `json:"createdAt,omitempty,string"`
  2859  	// CustomAttributes: Custom claims to be added to any ID tokens minted for the
  2860  	// account. Should be at most 1,000 characters in length and in valid JSON
  2861  	// format.
  2862  	CustomAttributes string `json:"customAttributes,omitempty"`
  2863  	// CustomAuth: Output only. Whether this account has been authenticated using
  2864  	// SignInWithCustomToken.
  2865  	CustomAuth bool `json:"customAuth,omitempty"`
  2866  	// DateOfBirth: Output only. The date of birth set for the account. This
  2867  	// account attribute is not used by Identity Platform. It is available for
  2868  	// informational purposes only.
  2869  	DateOfBirth string `json:"dateOfBirth,omitempty"`
  2870  	// Disabled: Whether the account is disabled. Disabled accounts are
  2871  	// inaccessible except for requests bearing a Google OAuth2 credential with
  2872  	// proper permissions.
  2873  	Disabled bool `json:"disabled,omitempty"`
  2874  	// DisplayName: The display name of the account. This account attribute is not
  2875  	// used by Identity Platform. It is available for informational purposes only.
  2876  	DisplayName string `json:"displayName,omitempty"`
  2877  	// Email: The account's email address. The length of the email should be less
  2878  	// than 256 characters and in the format of `name@domain.tld`. The email should
  2879  	// also match the RFC 822 (https://tools.ietf.org/html/rfc822) addr-spec.
  2880  	Email string `json:"email,omitempty"`
  2881  	// EmailLinkSignin: Output only. Whether the account can authenticate with
  2882  	// email link.
  2883  	EmailLinkSignin bool `json:"emailLinkSignin,omitempty"`
  2884  	// EmailVerified: Whether the account's email address has been verified.
  2885  	EmailVerified bool `json:"emailVerified,omitempty"`
  2886  	// InitialEmail: The first email address associated with this account. The
  2887  	// account's initial email cannot be changed once set and is used to recover
  2888  	// access to this account if lost via the RECOVER_EMAIL flow in GetOobCode.
  2889  	// Should match the RFC 822 (https://tools.ietf.org/html/rfc822) addr-spec.
  2890  	InitialEmail string `json:"initialEmail,omitempty"`
  2891  	// Language: Output only. The language preference of the account. This account
  2892  	// attribute is not used by Identity Platform. It is available for
  2893  	// informational purposes only.
  2894  	Language string `json:"language,omitempty"`
  2895  	// LastLoginAt: The last time, in milliseconds from epoch, this account was
  2896  	// logged into.
  2897  	LastLoginAt int64 `json:"lastLoginAt,omitempty,string"`
  2898  	// LastRefreshAt: Timestamp when an ID token was last minted for this account.
  2899  	LastRefreshAt string `json:"lastRefreshAt,omitempty"`
  2900  	// LocalId: Immutable. The unique ID of the account.
  2901  	LocalId string `json:"localId,omitempty"`
  2902  	// MfaInfo: Information on which multi-factor authentication providers are
  2903  	// enabled for this account.
  2904  	MfaInfo []*GoogleCloudIdentitytoolkitV1MfaEnrollment `json:"mfaInfo,omitempty"`
  2905  	// PasswordHash: The account's hashed password. Only accessible by requests
  2906  	// bearing a Google OAuth2 credential with proper permissions
  2907  	// (https://cloud.google.com/identity-platform/docs/access-control).
  2908  	PasswordHash string `json:"passwordHash,omitempty"`
  2909  	// PasswordUpdatedAt: The timestamp, in milliseconds from the epoch of
  2910  	// 1970-01-01T00:00:00Z, when the account's password was last updated.
  2911  	PasswordUpdatedAt float64 `json:"passwordUpdatedAt,omitempty"`
  2912  	// PhoneNumber: The account's phone number.
  2913  	PhoneNumber string `json:"phoneNumber,omitempty"`
  2914  	// PhotoUrl: The URL of the account's profile photo. This account attribute is
  2915  	// not used by Identity Platform. It is available for informational purposes
  2916  	// only.
  2917  	PhotoUrl string `json:"photoUrl,omitempty"`
  2918  	// ProviderUserInfo: Information about the user as provided by various Identity
  2919  	// Providers.
  2920  	ProviderUserInfo []*GoogleCloudIdentitytoolkitV1ProviderUserInfo `json:"providerUserInfo,omitempty"`
  2921  	// RawPassword: Input only. Plain text password used to update a account's
  2922  	// password. This field is only ever used as input in a request. Identity
  2923  	// Platform uses cryptographically secure hashing when managing passwords and
  2924  	// will never store or transmit a user's password in plain text.
  2925  	RawPassword string `json:"rawPassword,omitempty"`
  2926  	// Salt: The account's password salt. Only accessible by requests bearing a
  2927  	// Google OAuth2 credential with proper permissions.
  2928  	Salt string `json:"salt,omitempty"`
  2929  	// ScreenName: Output only. This account's screen name at Twitter or login name
  2930  	// at GitHub.
  2931  	ScreenName string `json:"screenName,omitempty"`
  2932  	// TenantId: ID of the tenant this account belongs to. Only set if this account
  2933  	// belongs to a tenant.
  2934  	TenantId string `json:"tenantId,omitempty"`
  2935  	// TimeZone: Output only. The time zone preference of the account. This account
  2936  	// attribute is not used by Identity Platform. It is available for
  2937  	// informational purposes only.
  2938  	TimeZone string `json:"timeZone,omitempty"`
  2939  	// ValidSince: Oldest timestamp, in seconds since epoch, that an ID token
  2940  	// should be considered valid. All ID tokens issued before this time are
  2941  	// considered invalid.
  2942  	ValidSince int64 `json:"validSince,omitempty,string"`
  2943  	// Version: The version of the account's password. Only accessible by requests
  2944  	// bearing a Google OAuth2 credential with proper permissions.
  2945  	Version int64 `json:"version,omitempty"`
  2946  	// ForceSendFields is a list of field names (e.g. "CreatedAt") to
  2947  	// unconditionally include in API requests. By default, fields with empty or
  2948  	// default values are omitted from API requests. See
  2949  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2950  	// details.
  2951  	ForceSendFields []string `json:"-"`
  2952  	// NullFields is a list of field names (e.g. "CreatedAt") to include in API
  2953  	// requests with the JSON null value. By default, fields with empty values are
  2954  	// omitted from API requests. See
  2955  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2956  	NullFields []string `json:"-"`
  2957  }
  2958  
  2959  func (s *GoogleCloudIdentitytoolkitV1UserInfo) MarshalJSON() ([]byte, error) {
  2960  	type NoMethod GoogleCloudIdentitytoolkitV1UserInfo
  2961  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2962  }
  2963  
  2964  func (s *GoogleCloudIdentitytoolkitV1UserInfo) UnmarshalJSON(data []byte) error {
  2965  	type NoMethod GoogleCloudIdentitytoolkitV1UserInfo
  2966  	var s1 struct {
  2967  		PasswordUpdatedAt gensupport.JSONFloat64 `json:"passwordUpdatedAt"`
  2968  		*NoMethod
  2969  	}
  2970  	s1.NoMethod = (*NoMethod)(s)
  2971  	if err := json.Unmarshal(data, &s1); err != nil {
  2972  		return err
  2973  	}
  2974  	s.PasswordUpdatedAt = float64(s1.PasswordUpdatedAt)
  2975  	return nil
  2976  }
  2977  
  2978  // GoogleCloudIdentitytoolkitV1UserNotification: Warning notifications for the
  2979  // user.
  2980  type GoogleCloudIdentitytoolkitV1UserNotification struct {
  2981  	// NotificationCode: Warning notification enum. Can be used for localization.
  2982  	//
  2983  	// Possible values:
  2984  	//   "NOTIFICATION_CODE_UNSPECIFIED" - No notification specified.
  2985  	//   "MISSING_LOWERCASE_CHARACTER" - Password missing lowercase character.
  2986  	//   "MISSING_UPPERCASE_CHARACTER" - Password missing uppercase character.
  2987  	//   "MISSING_NUMERIC_CHARACTER" - Password missing numeric character.
  2988  	//   "MISSING_NON_ALPHANUMERIC_CHARACTER" - Password missing non alphanumeric
  2989  	// character.
  2990  	//   "MINIMUM_PASSWORD_LENGTH" - Password less than minimum required length.
  2991  	//   "MAXIMUM_PASSWORD_LENGTH" - Password greater than maximum required length.
  2992  	NotificationCode string `json:"notificationCode,omitempty"`
  2993  	// NotificationMessage: Warning notification string. Can be used as fallback.
  2994  	NotificationMessage string `json:"notificationMessage,omitempty"`
  2995  	// ForceSendFields is a list of field names (e.g. "NotificationCode") to
  2996  	// unconditionally include in API requests. By default, fields with empty or
  2997  	// default values are omitted from API requests. See
  2998  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2999  	// details.
  3000  	ForceSendFields []string `json:"-"`
  3001  	// NullFields is a list of field names (e.g. "NotificationCode") to include in
  3002  	// API requests with the JSON null value. By default, fields with empty values
  3003  	// are omitted from API requests. See
  3004  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3005  	NullFields []string `json:"-"`
  3006  }
  3007  
  3008  func (s *GoogleCloudIdentitytoolkitV1UserNotification) MarshalJSON() ([]byte, error) {
  3009  	type NoMethod GoogleCloudIdentitytoolkitV1UserNotification
  3010  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3011  }
  3012  
  3013  // GoogleCloudIdentitytoolkitV1VerifyIosClientRequest: Request message for
  3014  // VerifyIosClient
  3015  type GoogleCloudIdentitytoolkitV1VerifyIosClientRequest struct {
  3016  	// AppToken: A device token that the iOS client gets after registering to APNs
  3017  	// (Apple Push Notification service).
  3018  	AppToken string `json:"appToken,omitempty"`
  3019  	// IsSandbox: Whether the app token is in the iOS sandbox. If false, the app
  3020  	// token is in the production environment.
  3021  	IsSandbox bool `json:"isSandbox,omitempty"`
  3022  	// ForceSendFields is a list of field names (e.g. "AppToken") to
  3023  	// unconditionally include in API requests. By default, fields with empty or
  3024  	// default values are omitted from API requests. See
  3025  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3026  	// details.
  3027  	ForceSendFields []string `json:"-"`
  3028  	// NullFields is a list of field names (e.g. "AppToken") to include in API
  3029  	// requests with the JSON null value. By default, fields with empty values are
  3030  	// omitted from API requests. See
  3031  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3032  	NullFields []string `json:"-"`
  3033  }
  3034  
  3035  func (s *GoogleCloudIdentitytoolkitV1VerifyIosClientRequest) MarshalJSON() ([]byte, error) {
  3036  	type NoMethod GoogleCloudIdentitytoolkitV1VerifyIosClientRequest
  3037  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3038  }
  3039  
  3040  // GoogleCloudIdentitytoolkitV1VerifyIosClientResponse: Response message for
  3041  // VerifyIosClient.
  3042  type GoogleCloudIdentitytoolkitV1VerifyIosClientResponse struct {
  3043  	// Receipt: Receipt of successful app token validation.
  3044  	Receipt string `json:"receipt,omitempty"`
  3045  	// SuggestedTimeout: Suggested time that the client should wait in seconds for
  3046  	// delivery of the push notification.
  3047  	SuggestedTimeout int64 `json:"suggestedTimeout,omitempty,string"`
  3048  
  3049  	// ServerResponse contains the HTTP response code and headers from the server.
  3050  	googleapi.ServerResponse `json:"-"`
  3051  	// ForceSendFields is a list of field names (e.g. "Receipt") to unconditionally
  3052  	// include in API requests. By default, fields with empty or default values are
  3053  	// omitted from API requests. See
  3054  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3055  	// details.
  3056  	ForceSendFields []string `json:"-"`
  3057  	// NullFields is a list of field names (e.g. "Receipt") to include in API
  3058  	// requests with the JSON null value. By default, fields with empty values are
  3059  	// omitted from API requests. See
  3060  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3061  	NullFields []string `json:"-"`
  3062  }
  3063  
  3064  func (s *GoogleCloudIdentitytoolkitV1VerifyIosClientResponse) MarshalJSON() ([]byte, error) {
  3065  	type NoMethod GoogleCloudIdentitytoolkitV1VerifyIosClientResponse
  3066  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3067  }
  3068  
  3069  type AccountsCreateAuthUriCall struct {
  3070  	s                                                *Service
  3071  	googlecloudidentitytoolkitv1createauthurirequest *GoogleCloudIdentitytoolkitV1CreateAuthUriRequest
  3072  	urlParams_                                       gensupport.URLParams
  3073  	ctx_                                             context.Context
  3074  	header_                                          http.Header
  3075  }
  3076  
  3077  // CreateAuthUri: If an email identifier is specified, checks and returns if
  3078  // any user account is registered with the email. If there is a registered
  3079  // account, fetches all providers associated with the account's email. If the
  3080  // provider ID of an Identity Provider (IdP) is specified, creates an
  3081  // authorization URI for the IdP. The user can be directed to this URI to sign
  3082  // in with the IdP. An API key
  3083  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  3084  // request in order to identify the Google Cloud project.
  3085  func (r *AccountsService) CreateAuthUri(googlecloudidentitytoolkitv1createauthurirequest *GoogleCloudIdentitytoolkitV1CreateAuthUriRequest) *AccountsCreateAuthUriCall {
  3086  	c := &AccountsCreateAuthUriCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3087  	c.googlecloudidentitytoolkitv1createauthurirequest = googlecloudidentitytoolkitv1createauthurirequest
  3088  	return c
  3089  }
  3090  
  3091  // Fields allows partial responses to be retrieved. See
  3092  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3093  // details.
  3094  func (c *AccountsCreateAuthUriCall) Fields(s ...googleapi.Field) *AccountsCreateAuthUriCall {
  3095  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3096  	return c
  3097  }
  3098  
  3099  // Context sets the context to be used in this call's Do method.
  3100  func (c *AccountsCreateAuthUriCall) Context(ctx context.Context) *AccountsCreateAuthUriCall {
  3101  	c.ctx_ = ctx
  3102  	return c
  3103  }
  3104  
  3105  // Header returns a http.Header that can be modified by the caller to add
  3106  // headers to the request.
  3107  func (c *AccountsCreateAuthUriCall) Header() http.Header {
  3108  	if c.header_ == nil {
  3109  		c.header_ = make(http.Header)
  3110  	}
  3111  	return c.header_
  3112  }
  3113  
  3114  func (c *AccountsCreateAuthUriCall) doRequest(alt string) (*http.Response, error) {
  3115  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3116  	var body io.Reader = nil
  3117  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1createauthurirequest)
  3118  	if err != nil {
  3119  		return nil, err
  3120  	}
  3121  	c.urlParams_.Set("alt", alt)
  3122  	c.urlParams_.Set("prettyPrint", "false")
  3123  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:createAuthUri")
  3124  	urls += "?" + c.urlParams_.Encode()
  3125  	req, err := http.NewRequest("POST", urls, body)
  3126  	if err != nil {
  3127  		return nil, err
  3128  	}
  3129  	req.Header = reqHeaders
  3130  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3131  }
  3132  
  3133  // Do executes the "identitytoolkit.accounts.createAuthUri" call.
  3134  // Any non-2xx status code is an error. Response headers are in either
  3135  // *GoogleCloudIdentitytoolkitV1CreateAuthUriResponse.ServerResponse.Header or
  3136  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  3137  // googleapi.IsNotModified to check whether the returned error was because
  3138  // http.StatusNotModified was returned.
  3139  func (c *AccountsCreateAuthUriCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1CreateAuthUriResponse, error) {
  3140  	gensupport.SetOptions(c.urlParams_, opts...)
  3141  	res, err := c.doRequest("json")
  3142  	if res != nil && res.StatusCode == http.StatusNotModified {
  3143  		if res.Body != nil {
  3144  			res.Body.Close()
  3145  		}
  3146  		return nil, gensupport.WrapError(&googleapi.Error{
  3147  			Code:   res.StatusCode,
  3148  			Header: res.Header,
  3149  		})
  3150  	}
  3151  	if err != nil {
  3152  		return nil, err
  3153  	}
  3154  	defer googleapi.CloseBody(res)
  3155  	if err := googleapi.CheckResponse(res); err != nil {
  3156  		return nil, gensupport.WrapError(err)
  3157  	}
  3158  	ret := &GoogleCloudIdentitytoolkitV1CreateAuthUriResponse{
  3159  		ServerResponse: googleapi.ServerResponse{
  3160  			Header:         res.Header,
  3161  			HTTPStatusCode: res.StatusCode,
  3162  		},
  3163  	}
  3164  	target := &ret
  3165  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3166  		return nil, err
  3167  	}
  3168  	return ret, nil
  3169  }
  3170  
  3171  type AccountsDeleteCall struct {
  3172  	s                                                *Service
  3173  	googlecloudidentitytoolkitv1deleteaccountrequest *GoogleCloudIdentitytoolkitV1DeleteAccountRequest
  3174  	urlParams_                                       gensupport.URLParams
  3175  	ctx_                                             context.Context
  3176  	header_                                          http.Header
  3177  }
  3178  
  3179  // Delete: Deletes a user's account.
  3180  func (r *AccountsService) Delete(googlecloudidentitytoolkitv1deleteaccountrequest *GoogleCloudIdentitytoolkitV1DeleteAccountRequest) *AccountsDeleteCall {
  3181  	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3182  	c.googlecloudidentitytoolkitv1deleteaccountrequest = googlecloudidentitytoolkitv1deleteaccountrequest
  3183  	return c
  3184  }
  3185  
  3186  // Fields allows partial responses to be retrieved. See
  3187  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3188  // details.
  3189  func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
  3190  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3191  	return c
  3192  }
  3193  
  3194  // Context sets the context to be used in this call's Do method.
  3195  func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
  3196  	c.ctx_ = ctx
  3197  	return c
  3198  }
  3199  
  3200  // Header returns a http.Header that can be modified by the caller to add
  3201  // headers to the request.
  3202  func (c *AccountsDeleteCall) Header() http.Header {
  3203  	if c.header_ == nil {
  3204  		c.header_ = make(http.Header)
  3205  	}
  3206  	return c.header_
  3207  }
  3208  
  3209  func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
  3210  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3211  	var body io.Reader = nil
  3212  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1deleteaccountrequest)
  3213  	if err != nil {
  3214  		return nil, err
  3215  	}
  3216  	c.urlParams_.Set("alt", alt)
  3217  	c.urlParams_.Set("prettyPrint", "false")
  3218  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:delete")
  3219  	urls += "?" + c.urlParams_.Encode()
  3220  	req, err := http.NewRequest("POST", urls, body)
  3221  	if err != nil {
  3222  		return nil, err
  3223  	}
  3224  	req.Header = reqHeaders
  3225  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3226  }
  3227  
  3228  // Do executes the "identitytoolkit.accounts.delete" call.
  3229  // Any non-2xx status code is an error. Response headers are in either
  3230  // *GoogleCloudIdentitytoolkitV1DeleteAccountResponse.ServerResponse.Header or
  3231  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  3232  // googleapi.IsNotModified to check whether the returned error was because
  3233  // http.StatusNotModified was returned.
  3234  func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1DeleteAccountResponse, error) {
  3235  	gensupport.SetOptions(c.urlParams_, opts...)
  3236  	res, err := c.doRequest("json")
  3237  	if res != nil && res.StatusCode == http.StatusNotModified {
  3238  		if res.Body != nil {
  3239  			res.Body.Close()
  3240  		}
  3241  		return nil, gensupport.WrapError(&googleapi.Error{
  3242  			Code:   res.StatusCode,
  3243  			Header: res.Header,
  3244  		})
  3245  	}
  3246  	if err != nil {
  3247  		return nil, err
  3248  	}
  3249  	defer googleapi.CloseBody(res)
  3250  	if err := googleapi.CheckResponse(res); err != nil {
  3251  		return nil, gensupport.WrapError(err)
  3252  	}
  3253  	ret := &GoogleCloudIdentitytoolkitV1DeleteAccountResponse{
  3254  		ServerResponse: googleapi.ServerResponse{
  3255  			Header:         res.Header,
  3256  			HTTPStatusCode: res.StatusCode,
  3257  		},
  3258  	}
  3259  	target := &ret
  3260  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3261  		return nil, err
  3262  	}
  3263  	return ret, nil
  3264  }
  3265  
  3266  type AccountsIssueSamlResponseCall struct {
  3267  	s                                                    *Service
  3268  	googlecloudidentitytoolkitv1issuesamlresponserequest *GoogleCloudIdentitytoolkitV1IssueSamlResponseRequest
  3269  	urlParams_                                           gensupport.URLParams
  3270  	ctx_                                                 context.Context
  3271  	header_                                              http.Header
  3272  }
  3273  
  3274  // IssueSamlResponse: Experimental
  3275  func (r *AccountsService) IssueSamlResponse(googlecloudidentitytoolkitv1issuesamlresponserequest *GoogleCloudIdentitytoolkitV1IssueSamlResponseRequest) *AccountsIssueSamlResponseCall {
  3276  	c := &AccountsIssueSamlResponseCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3277  	c.googlecloudidentitytoolkitv1issuesamlresponserequest = googlecloudidentitytoolkitv1issuesamlresponserequest
  3278  	return c
  3279  }
  3280  
  3281  // Fields allows partial responses to be retrieved. See
  3282  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3283  // details.
  3284  func (c *AccountsIssueSamlResponseCall) Fields(s ...googleapi.Field) *AccountsIssueSamlResponseCall {
  3285  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3286  	return c
  3287  }
  3288  
  3289  // Context sets the context to be used in this call's Do method.
  3290  func (c *AccountsIssueSamlResponseCall) Context(ctx context.Context) *AccountsIssueSamlResponseCall {
  3291  	c.ctx_ = ctx
  3292  	return c
  3293  }
  3294  
  3295  // Header returns a http.Header that can be modified by the caller to add
  3296  // headers to the request.
  3297  func (c *AccountsIssueSamlResponseCall) Header() http.Header {
  3298  	if c.header_ == nil {
  3299  		c.header_ = make(http.Header)
  3300  	}
  3301  	return c.header_
  3302  }
  3303  
  3304  func (c *AccountsIssueSamlResponseCall) doRequest(alt string) (*http.Response, error) {
  3305  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3306  	var body io.Reader = nil
  3307  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1issuesamlresponserequest)
  3308  	if err != nil {
  3309  		return nil, err
  3310  	}
  3311  	c.urlParams_.Set("alt", alt)
  3312  	c.urlParams_.Set("prettyPrint", "false")
  3313  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:issueSamlResponse")
  3314  	urls += "?" + c.urlParams_.Encode()
  3315  	req, err := http.NewRequest("POST", urls, body)
  3316  	if err != nil {
  3317  		return nil, err
  3318  	}
  3319  	req.Header = reqHeaders
  3320  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3321  }
  3322  
  3323  // Do executes the "identitytoolkit.accounts.issueSamlResponse" call.
  3324  // Any non-2xx status code is an error. Response headers are in either
  3325  // *GoogleCloudIdentitytoolkitV1IssueSamlResponseResponse.ServerResponse.Header
  3326  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  3327  // Use googleapi.IsNotModified to check whether the returned error was because
  3328  // http.StatusNotModified was returned.
  3329  func (c *AccountsIssueSamlResponseCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1IssueSamlResponseResponse, error) {
  3330  	gensupport.SetOptions(c.urlParams_, opts...)
  3331  	res, err := c.doRequest("json")
  3332  	if res != nil && res.StatusCode == http.StatusNotModified {
  3333  		if res.Body != nil {
  3334  			res.Body.Close()
  3335  		}
  3336  		return nil, gensupport.WrapError(&googleapi.Error{
  3337  			Code:   res.StatusCode,
  3338  			Header: res.Header,
  3339  		})
  3340  	}
  3341  	if err != nil {
  3342  		return nil, err
  3343  	}
  3344  	defer googleapi.CloseBody(res)
  3345  	if err := googleapi.CheckResponse(res); err != nil {
  3346  		return nil, gensupport.WrapError(err)
  3347  	}
  3348  	ret := &GoogleCloudIdentitytoolkitV1IssueSamlResponseResponse{
  3349  		ServerResponse: googleapi.ServerResponse{
  3350  			Header:         res.Header,
  3351  			HTTPStatusCode: res.StatusCode,
  3352  		},
  3353  	}
  3354  	target := &ret
  3355  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3356  		return nil, err
  3357  	}
  3358  	return ret, nil
  3359  }
  3360  
  3361  type AccountsLookupCall struct {
  3362  	s                                                 *Service
  3363  	googlecloudidentitytoolkitv1getaccountinforequest *GoogleCloudIdentitytoolkitV1GetAccountInfoRequest
  3364  	urlParams_                                        gensupport.URLParams
  3365  	ctx_                                              context.Context
  3366  	header_                                           http.Header
  3367  }
  3368  
  3369  // Lookup: Gets account information for all matched accounts. For an end user
  3370  // request, retrieves the account of the end user. For an admin request with
  3371  // Google OAuth 2.0 credential, retrieves one or multiple account(s) with
  3372  // matching criteria.
  3373  func (r *AccountsService) Lookup(googlecloudidentitytoolkitv1getaccountinforequest *GoogleCloudIdentitytoolkitV1GetAccountInfoRequest) *AccountsLookupCall {
  3374  	c := &AccountsLookupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3375  	c.googlecloudidentitytoolkitv1getaccountinforequest = googlecloudidentitytoolkitv1getaccountinforequest
  3376  	return c
  3377  }
  3378  
  3379  // Fields allows partial responses to be retrieved. See
  3380  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3381  // details.
  3382  func (c *AccountsLookupCall) Fields(s ...googleapi.Field) *AccountsLookupCall {
  3383  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3384  	return c
  3385  }
  3386  
  3387  // Context sets the context to be used in this call's Do method.
  3388  func (c *AccountsLookupCall) Context(ctx context.Context) *AccountsLookupCall {
  3389  	c.ctx_ = ctx
  3390  	return c
  3391  }
  3392  
  3393  // Header returns a http.Header that can be modified by the caller to add
  3394  // headers to the request.
  3395  func (c *AccountsLookupCall) Header() http.Header {
  3396  	if c.header_ == nil {
  3397  		c.header_ = make(http.Header)
  3398  	}
  3399  	return c.header_
  3400  }
  3401  
  3402  func (c *AccountsLookupCall) doRequest(alt string) (*http.Response, error) {
  3403  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3404  	var body io.Reader = nil
  3405  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1getaccountinforequest)
  3406  	if err != nil {
  3407  		return nil, err
  3408  	}
  3409  	c.urlParams_.Set("alt", alt)
  3410  	c.urlParams_.Set("prettyPrint", "false")
  3411  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:lookup")
  3412  	urls += "?" + c.urlParams_.Encode()
  3413  	req, err := http.NewRequest("POST", urls, body)
  3414  	if err != nil {
  3415  		return nil, err
  3416  	}
  3417  	req.Header = reqHeaders
  3418  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3419  }
  3420  
  3421  // Do executes the "identitytoolkit.accounts.lookup" call.
  3422  // Any non-2xx status code is an error. Response headers are in either
  3423  // *GoogleCloudIdentitytoolkitV1GetAccountInfoResponse.ServerResponse.Header or
  3424  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  3425  // googleapi.IsNotModified to check whether the returned error was because
  3426  // http.StatusNotModified was returned.
  3427  func (c *AccountsLookupCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetAccountInfoResponse, error) {
  3428  	gensupport.SetOptions(c.urlParams_, opts...)
  3429  	res, err := c.doRequest("json")
  3430  	if res != nil && res.StatusCode == http.StatusNotModified {
  3431  		if res.Body != nil {
  3432  			res.Body.Close()
  3433  		}
  3434  		return nil, gensupport.WrapError(&googleapi.Error{
  3435  			Code:   res.StatusCode,
  3436  			Header: res.Header,
  3437  		})
  3438  	}
  3439  	if err != nil {
  3440  		return nil, err
  3441  	}
  3442  	defer googleapi.CloseBody(res)
  3443  	if err := googleapi.CheckResponse(res); err != nil {
  3444  		return nil, gensupport.WrapError(err)
  3445  	}
  3446  	ret := &GoogleCloudIdentitytoolkitV1GetAccountInfoResponse{
  3447  		ServerResponse: googleapi.ServerResponse{
  3448  			Header:         res.Header,
  3449  			HTTPStatusCode: res.StatusCode,
  3450  		},
  3451  	}
  3452  	target := &ret
  3453  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3454  		return nil, err
  3455  	}
  3456  	return ret, nil
  3457  }
  3458  
  3459  type AccountsResetPasswordCall struct {
  3460  	s                                                *Service
  3461  	googlecloudidentitytoolkitv1resetpasswordrequest *GoogleCloudIdentitytoolkitV1ResetPasswordRequest
  3462  	urlParams_                                       gensupport.URLParams
  3463  	ctx_                                             context.Context
  3464  	header_                                          http.Header
  3465  }
  3466  
  3467  // ResetPassword: Resets the password of an account either using an out-of-band
  3468  // code generated by sendOobCode or by specifying the email and password of the
  3469  // account to be modified. Can also check the purpose of an out-of-band code
  3470  // without consuming it.
  3471  func (r *AccountsService) ResetPassword(googlecloudidentitytoolkitv1resetpasswordrequest *GoogleCloudIdentitytoolkitV1ResetPasswordRequest) *AccountsResetPasswordCall {
  3472  	c := &AccountsResetPasswordCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3473  	c.googlecloudidentitytoolkitv1resetpasswordrequest = googlecloudidentitytoolkitv1resetpasswordrequest
  3474  	return c
  3475  }
  3476  
  3477  // Fields allows partial responses to be retrieved. See
  3478  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3479  // details.
  3480  func (c *AccountsResetPasswordCall) Fields(s ...googleapi.Field) *AccountsResetPasswordCall {
  3481  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3482  	return c
  3483  }
  3484  
  3485  // Context sets the context to be used in this call's Do method.
  3486  func (c *AccountsResetPasswordCall) Context(ctx context.Context) *AccountsResetPasswordCall {
  3487  	c.ctx_ = ctx
  3488  	return c
  3489  }
  3490  
  3491  // Header returns a http.Header that can be modified by the caller to add
  3492  // headers to the request.
  3493  func (c *AccountsResetPasswordCall) Header() http.Header {
  3494  	if c.header_ == nil {
  3495  		c.header_ = make(http.Header)
  3496  	}
  3497  	return c.header_
  3498  }
  3499  
  3500  func (c *AccountsResetPasswordCall) doRequest(alt string) (*http.Response, error) {
  3501  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3502  	var body io.Reader = nil
  3503  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1resetpasswordrequest)
  3504  	if err != nil {
  3505  		return nil, err
  3506  	}
  3507  	c.urlParams_.Set("alt", alt)
  3508  	c.urlParams_.Set("prettyPrint", "false")
  3509  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:resetPassword")
  3510  	urls += "?" + c.urlParams_.Encode()
  3511  	req, err := http.NewRequest("POST", urls, body)
  3512  	if err != nil {
  3513  		return nil, err
  3514  	}
  3515  	req.Header = reqHeaders
  3516  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3517  }
  3518  
  3519  // Do executes the "identitytoolkit.accounts.resetPassword" call.
  3520  // Any non-2xx status code is an error. Response headers are in either
  3521  // *GoogleCloudIdentitytoolkitV1ResetPasswordResponse.ServerResponse.Header or
  3522  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  3523  // googleapi.IsNotModified to check whether the returned error was because
  3524  // http.StatusNotModified was returned.
  3525  func (c *AccountsResetPasswordCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1ResetPasswordResponse, error) {
  3526  	gensupport.SetOptions(c.urlParams_, opts...)
  3527  	res, err := c.doRequest("json")
  3528  	if res != nil && res.StatusCode == http.StatusNotModified {
  3529  		if res.Body != nil {
  3530  			res.Body.Close()
  3531  		}
  3532  		return nil, gensupport.WrapError(&googleapi.Error{
  3533  			Code:   res.StatusCode,
  3534  			Header: res.Header,
  3535  		})
  3536  	}
  3537  	if err != nil {
  3538  		return nil, err
  3539  	}
  3540  	defer googleapi.CloseBody(res)
  3541  	if err := googleapi.CheckResponse(res); err != nil {
  3542  		return nil, gensupport.WrapError(err)
  3543  	}
  3544  	ret := &GoogleCloudIdentitytoolkitV1ResetPasswordResponse{
  3545  		ServerResponse: googleapi.ServerResponse{
  3546  			Header:         res.Header,
  3547  			HTTPStatusCode: res.StatusCode,
  3548  		},
  3549  	}
  3550  	target := &ret
  3551  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3552  		return nil, err
  3553  	}
  3554  	return ret, nil
  3555  }
  3556  
  3557  type AccountsSendOobCodeCall struct {
  3558  	s                                             *Service
  3559  	googlecloudidentitytoolkitv1getoobcoderequest *GoogleCloudIdentitytoolkitV1GetOobCodeRequest
  3560  	urlParams_                                    gensupport.URLParams
  3561  	ctx_                                          context.Context
  3562  	header_                                       http.Header
  3563  }
  3564  
  3565  // SendOobCode: Sends an out-of-band confirmation code for an account. Requests
  3566  // from a authenticated request can optionally return a link including the OOB
  3567  // code instead of sending it.
  3568  func (r *AccountsService) SendOobCode(googlecloudidentitytoolkitv1getoobcoderequest *GoogleCloudIdentitytoolkitV1GetOobCodeRequest) *AccountsSendOobCodeCall {
  3569  	c := &AccountsSendOobCodeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3570  	c.googlecloudidentitytoolkitv1getoobcoderequest = googlecloudidentitytoolkitv1getoobcoderequest
  3571  	return c
  3572  }
  3573  
  3574  // Fields allows partial responses to be retrieved. See
  3575  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3576  // details.
  3577  func (c *AccountsSendOobCodeCall) Fields(s ...googleapi.Field) *AccountsSendOobCodeCall {
  3578  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3579  	return c
  3580  }
  3581  
  3582  // Context sets the context to be used in this call's Do method.
  3583  func (c *AccountsSendOobCodeCall) Context(ctx context.Context) *AccountsSendOobCodeCall {
  3584  	c.ctx_ = ctx
  3585  	return c
  3586  }
  3587  
  3588  // Header returns a http.Header that can be modified by the caller to add
  3589  // headers to the request.
  3590  func (c *AccountsSendOobCodeCall) Header() http.Header {
  3591  	if c.header_ == nil {
  3592  		c.header_ = make(http.Header)
  3593  	}
  3594  	return c.header_
  3595  }
  3596  
  3597  func (c *AccountsSendOobCodeCall) doRequest(alt string) (*http.Response, error) {
  3598  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3599  	var body io.Reader = nil
  3600  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1getoobcoderequest)
  3601  	if err != nil {
  3602  		return nil, err
  3603  	}
  3604  	c.urlParams_.Set("alt", alt)
  3605  	c.urlParams_.Set("prettyPrint", "false")
  3606  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:sendOobCode")
  3607  	urls += "?" + c.urlParams_.Encode()
  3608  	req, err := http.NewRequest("POST", urls, body)
  3609  	if err != nil {
  3610  		return nil, err
  3611  	}
  3612  	req.Header = reqHeaders
  3613  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3614  }
  3615  
  3616  // Do executes the "identitytoolkit.accounts.sendOobCode" call.
  3617  // Any non-2xx status code is an error. Response headers are in either
  3618  // *GoogleCloudIdentitytoolkitV1GetOobCodeResponse.ServerResponse.Header or (if
  3619  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  3620  // googleapi.IsNotModified to check whether the returned error was because
  3621  // http.StatusNotModified was returned.
  3622  func (c *AccountsSendOobCodeCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetOobCodeResponse, error) {
  3623  	gensupport.SetOptions(c.urlParams_, opts...)
  3624  	res, err := c.doRequest("json")
  3625  	if res != nil && res.StatusCode == http.StatusNotModified {
  3626  		if res.Body != nil {
  3627  			res.Body.Close()
  3628  		}
  3629  		return nil, gensupport.WrapError(&googleapi.Error{
  3630  			Code:   res.StatusCode,
  3631  			Header: res.Header,
  3632  		})
  3633  	}
  3634  	if err != nil {
  3635  		return nil, err
  3636  	}
  3637  	defer googleapi.CloseBody(res)
  3638  	if err := googleapi.CheckResponse(res); err != nil {
  3639  		return nil, gensupport.WrapError(err)
  3640  	}
  3641  	ret := &GoogleCloudIdentitytoolkitV1GetOobCodeResponse{
  3642  		ServerResponse: googleapi.ServerResponse{
  3643  			Header:         res.Header,
  3644  			HTTPStatusCode: res.StatusCode,
  3645  		},
  3646  	}
  3647  	target := &ret
  3648  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3649  		return nil, err
  3650  	}
  3651  	return ret, nil
  3652  }
  3653  
  3654  type AccountsSendVerificationCodeCall struct {
  3655  	s                                                       *Service
  3656  	googlecloudidentitytoolkitv1sendverificationcoderequest *GoogleCloudIdentitytoolkitV1SendVerificationCodeRequest
  3657  	urlParams_                                              gensupport.URLParams
  3658  	ctx_                                                    context.Context
  3659  	header_                                                 http.Header
  3660  }
  3661  
  3662  // SendVerificationCode: Sends a SMS verification code for phone number
  3663  // sign-in. To localize the text of the SMS sent to the user, set the HTTP
  3664  // header `X-Firebase-Locale` to the language code that corresponds with the
  3665  // user's locale. An API key
  3666  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  3667  // request in order to identify the Google Cloud project.
  3668  func (r *AccountsService) SendVerificationCode(googlecloudidentitytoolkitv1sendverificationcoderequest *GoogleCloudIdentitytoolkitV1SendVerificationCodeRequest) *AccountsSendVerificationCodeCall {
  3669  	c := &AccountsSendVerificationCodeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3670  	c.googlecloudidentitytoolkitv1sendverificationcoderequest = googlecloudidentitytoolkitv1sendverificationcoderequest
  3671  	return c
  3672  }
  3673  
  3674  // Fields allows partial responses to be retrieved. See
  3675  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3676  // details.
  3677  func (c *AccountsSendVerificationCodeCall) Fields(s ...googleapi.Field) *AccountsSendVerificationCodeCall {
  3678  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3679  	return c
  3680  }
  3681  
  3682  // Context sets the context to be used in this call's Do method.
  3683  func (c *AccountsSendVerificationCodeCall) Context(ctx context.Context) *AccountsSendVerificationCodeCall {
  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 *AccountsSendVerificationCodeCall) Header() http.Header {
  3691  	if c.header_ == nil {
  3692  		c.header_ = make(http.Header)
  3693  	}
  3694  	return c.header_
  3695  }
  3696  
  3697  func (c *AccountsSendVerificationCodeCall) doRequest(alt string) (*http.Response, error) {
  3698  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3699  	var body io.Reader = nil
  3700  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1sendverificationcoderequest)
  3701  	if err != nil {
  3702  		return nil, err
  3703  	}
  3704  	c.urlParams_.Set("alt", alt)
  3705  	c.urlParams_.Set("prettyPrint", "false")
  3706  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:sendVerificationCode")
  3707  	urls += "?" + c.urlParams_.Encode()
  3708  	req, err := http.NewRequest("POST", urls, body)
  3709  	if err != nil {
  3710  		return nil, err
  3711  	}
  3712  	req.Header = reqHeaders
  3713  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3714  }
  3715  
  3716  // Do executes the "identitytoolkit.accounts.sendVerificationCode" call.
  3717  // Any non-2xx status code is an error. Response headers are in either
  3718  // *GoogleCloudIdentitytoolkitV1SendVerificationCodeResponse.ServerResponse.Head
  3719  // er or (if a response was returned at all) in
  3720  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3721  // whether the returned error was because http.StatusNotModified was returned.
  3722  func (c *AccountsSendVerificationCodeCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SendVerificationCodeResponse, error) {
  3723  	gensupport.SetOptions(c.urlParams_, opts...)
  3724  	res, err := c.doRequest("json")
  3725  	if res != nil && res.StatusCode == http.StatusNotModified {
  3726  		if res.Body != nil {
  3727  			res.Body.Close()
  3728  		}
  3729  		return nil, gensupport.WrapError(&googleapi.Error{
  3730  			Code:   res.StatusCode,
  3731  			Header: res.Header,
  3732  		})
  3733  	}
  3734  	if err != nil {
  3735  		return nil, err
  3736  	}
  3737  	defer googleapi.CloseBody(res)
  3738  	if err := googleapi.CheckResponse(res); err != nil {
  3739  		return nil, gensupport.WrapError(err)
  3740  	}
  3741  	ret := &GoogleCloudIdentitytoolkitV1SendVerificationCodeResponse{
  3742  		ServerResponse: googleapi.ServerResponse{
  3743  			Header:         res.Header,
  3744  			HTTPStatusCode: res.StatusCode,
  3745  		},
  3746  	}
  3747  	target := &ret
  3748  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3749  		return nil, err
  3750  	}
  3751  	return ret, nil
  3752  }
  3753  
  3754  type AccountsSignInWithCustomTokenCall struct {
  3755  	s                                                        *Service
  3756  	googlecloudidentitytoolkitv1signinwithcustomtokenrequest *GoogleCloudIdentitytoolkitV1SignInWithCustomTokenRequest
  3757  	urlParams_                                               gensupport.URLParams
  3758  	ctx_                                                     context.Context
  3759  	header_                                                  http.Header
  3760  }
  3761  
  3762  // SignInWithCustomToken: Signs in or signs up a user by exchanging a custom
  3763  // Auth token. Upon a successful sign-in or sign-up, a new Identity Platform ID
  3764  // token and refresh token are issued for the user. An API key
  3765  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  3766  // request in order to identify the Google Cloud project.
  3767  func (r *AccountsService) SignInWithCustomToken(googlecloudidentitytoolkitv1signinwithcustomtokenrequest *GoogleCloudIdentitytoolkitV1SignInWithCustomTokenRequest) *AccountsSignInWithCustomTokenCall {
  3768  	c := &AccountsSignInWithCustomTokenCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3769  	c.googlecloudidentitytoolkitv1signinwithcustomtokenrequest = googlecloudidentitytoolkitv1signinwithcustomtokenrequest
  3770  	return c
  3771  }
  3772  
  3773  // Fields allows partial responses to be retrieved. See
  3774  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3775  // details.
  3776  func (c *AccountsSignInWithCustomTokenCall) Fields(s ...googleapi.Field) *AccountsSignInWithCustomTokenCall {
  3777  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3778  	return c
  3779  }
  3780  
  3781  // Context sets the context to be used in this call's Do method.
  3782  func (c *AccountsSignInWithCustomTokenCall) Context(ctx context.Context) *AccountsSignInWithCustomTokenCall {
  3783  	c.ctx_ = ctx
  3784  	return c
  3785  }
  3786  
  3787  // Header returns a http.Header that can be modified by the caller to add
  3788  // headers to the request.
  3789  func (c *AccountsSignInWithCustomTokenCall) Header() http.Header {
  3790  	if c.header_ == nil {
  3791  		c.header_ = make(http.Header)
  3792  	}
  3793  	return c.header_
  3794  }
  3795  
  3796  func (c *AccountsSignInWithCustomTokenCall) doRequest(alt string) (*http.Response, error) {
  3797  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3798  	var body io.Reader = nil
  3799  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signinwithcustomtokenrequest)
  3800  	if err != nil {
  3801  		return nil, err
  3802  	}
  3803  	c.urlParams_.Set("alt", alt)
  3804  	c.urlParams_.Set("prettyPrint", "false")
  3805  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:signInWithCustomToken")
  3806  	urls += "?" + c.urlParams_.Encode()
  3807  	req, err := http.NewRequest("POST", urls, body)
  3808  	if err != nil {
  3809  		return nil, err
  3810  	}
  3811  	req.Header = reqHeaders
  3812  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3813  }
  3814  
  3815  // Do executes the "identitytoolkit.accounts.signInWithCustomToken" call.
  3816  // Any non-2xx status code is an error. Response headers are in either
  3817  // *GoogleCloudIdentitytoolkitV1SignInWithCustomTokenResponse.ServerResponse.Hea
  3818  // der or (if a response was returned at all) in
  3819  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3820  // whether the returned error was because http.StatusNotModified was returned.
  3821  func (c *AccountsSignInWithCustomTokenCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignInWithCustomTokenResponse, error) {
  3822  	gensupport.SetOptions(c.urlParams_, opts...)
  3823  	res, err := c.doRequest("json")
  3824  	if res != nil && res.StatusCode == http.StatusNotModified {
  3825  		if res.Body != nil {
  3826  			res.Body.Close()
  3827  		}
  3828  		return nil, gensupport.WrapError(&googleapi.Error{
  3829  			Code:   res.StatusCode,
  3830  			Header: res.Header,
  3831  		})
  3832  	}
  3833  	if err != nil {
  3834  		return nil, err
  3835  	}
  3836  	defer googleapi.CloseBody(res)
  3837  	if err := googleapi.CheckResponse(res); err != nil {
  3838  		return nil, gensupport.WrapError(err)
  3839  	}
  3840  	ret := &GoogleCloudIdentitytoolkitV1SignInWithCustomTokenResponse{
  3841  		ServerResponse: googleapi.ServerResponse{
  3842  			Header:         res.Header,
  3843  			HTTPStatusCode: res.StatusCode,
  3844  		},
  3845  	}
  3846  	target := &ret
  3847  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3848  		return nil, err
  3849  	}
  3850  	return ret, nil
  3851  }
  3852  
  3853  type AccountsSignInWithEmailLinkCall struct {
  3854  	s                                                      *Service
  3855  	googlecloudidentitytoolkitv1signinwithemaillinkrequest *GoogleCloudIdentitytoolkitV1SignInWithEmailLinkRequest
  3856  	urlParams_                                             gensupport.URLParams
  3857  	ctx_                                                   context.Context
  3858  	header_                                                http.Header
  3859  }
  3860  
  3861  // SignInWithEmailLink: Signs in or signs up a user with a out-of-band code
  3862  // from an email link. If a user does not exist with the given email address, a
  3863  // user record will be created. If the sign-in succeeds, an Identity Platform
  3864  // ID and refresh token are issued for the authenticated user. An API key
  3865  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  3866  // request in order to identify the Google Cloud project.
  3867  func (r *AccountsService) SignInWithEmailLink(googlecloudidentitytoolkitv1signinwithemaillinkrequest *GoogleCloudIdentitytoolkitV1SignInWithEmailLinkRequest) *AccountsSignInWithEmailLinkCall {
  3868  	c := &AccountsSignInWithEmailLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3869  	c.googlecloudidentitytoolkitv1signinwithemaillinkrequest = googlecloudidentitytoolkitv1signinwithemaillinkrequest
  3870  	return c
  3871  }
  3872  
  3873  // Fields allows partial responses to be retrieved. See
  3874  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3875  // details.
  3876  func (c *AccountsSignInWithEmailLinkCall) Fields(s ...googleapi.Field) *AccountsSignInWithEmailLinkCall {
  3877  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3878  	return c
  3879  }
  3880  
  3881  // Context sets the context to be used in this call's Do method.
  3882  func (c *AccountsSignInWithEmailLinkCall) Context(ctx context.Context) *AccountsSignInWithEmailLinkCall {
  3883  	c.ctx_ = ctx
  3884  	return c
  3885  }
  3886  
  3887  // Header returns a http.Header that can be modified by the caller to add
  3888  // headers to the request.
  3889  func (c *AccountsSignInWithEmailLinkCall) Header() http.Header {
  3890  	if c.header_ == nil {
  3891  		c.header_ = make(http.Header)
  3892  	}
  3893  	return c.header_
  3894  }
  3895  
  3896  func (c *AccountsSignInWithEmailLinkCall) doRequest(alt string) (*http.Response, error) {
  3897  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3898  	var body io.Reader = nil
  3899  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signinwithemaillinkrequest)
  3900  	if err != nil {
  3901  		return nil, err
  3902  	}
  3903  	c.urlParams_.Set("alt", alt)
  3904  	c.urlParams_.Set("prettyPrint", "false")
  3905  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:signInWithEmailLink")
  3906  	urls += "?" + c.urlParams_.Encode()
  3907  	req, err := http.NewRequest("POST", urls, body)
  3908  	if err != nil {
  3909  		return nil, err
  3910  	}
  3911  	req.Header = reqHeaders
  3912  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3913  }
  3914  
  3915  // Do executes the "identitytoolkit.accounts.signInWithEmailLink" call.
  3916  // Any non-2xx status code is an error. Response headers are in either
  3917  // *GoogleCloudIdentitytoolkitV1SignInWithEmailLinkResponse.ServerResponse.Heade
  3918  // r or (if a response was returned at all) in error.(*googleapi.Error).Header.
  3919  // Use googleapi.IsNotModified to check whether the returned error was because
  3920  // http.StatusNotModified was returned.
  3921  func (c *AccountsSignInWithEmailLinkCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignInWithEmailLinkResponse, error) {
  3922  	gensupport.SetOptions(c.urlParams_, opts...)
  3923  	res, err := c.doRequest("json")
  3924  	if res != nil && res.StatusCode == http.StatusNotModified {
  3925  		if res.Body != nil {
  3926  			res.Body.Close()
  3927  		}
  3928  		return nil, gensupport.WrapError(&googleapi.Error{
  3929  			Code:   res.StatusCode,
  3930  			Header: res.Header,
  3931  		})
  3932  	}
  3933  	if err != nil {
  3934  		return nil, err
  3935  	}
  3936  	defer googleapi.CloseBody(res)
  3937  	if err := googleapi.CheckResponse(res); err != nil {
  3938  		return nil, gensupport.WrapError(err)
  3939  	}
  3940  	ret := &GoogleCloudIdentitytoolkitV1SignInWithEmailLinkResponse{
  3941  		ServerResponse: googleapi.ServerResponse{
  3942  			Header:         res.Header,
  3943  			HTTPStatusCode: res.StatusCode,
  3944  		},
  3945  	}
  3946  	target := &ret
  3947  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3948  		return nil, err
  3949  	}
  3950  	return ret, nil
  3951  }
  3952  
  3953  type AccountsSignInWithGameCenterCall struct {
  3954  	s                                                       *Service
  3955  	googlecloudidentitytoolkitv1signinwithgamecenterrequest *GoogleCloudIdentitytoolkitV1SignInWithGameCenterRequest
  3956  	urlParams_                                              gensupport.URLParams
  3957  	ctx_                                                    context.Context
  3958  	header_                                                 http.Header
  3959  }
  3960  
  3961  // SignInWithGameCenter: Signs in or signs up a user with iOS Game Center
  3962  // credentials. If the sign-in succeeds, a new Identity Platform ID token and
  3963  // refresh token are issued for the authenticated user. The bundle ID is
  3964  // required in the request header as `x-ios-bundle-identifier`. An API key
  3965  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  3966  // request in order to identify the Google Cloud project. Apple has deprecated
  3967  // the `playerID` field
  3968  // (https://developer.apple.com/documentation/gamekit/gkplayer/1521127-playerid/).
  3969  // The Apple platform Firebase SDK will use `gamePlayerID` and `teamPlayerID`
  3970  // from version 10.5.0 and onwards. Upgrading to SDK version 10.5.0 or later
  3971  // updates existing integrations that use `playerID` to instead use
  3972  // `gamePlayerID` and `teamPlayerID`. When making calls to
  3973  // `signInWithGameCenter`, you must include `playerID` along with the new
  3974  // fields `gamePlayerID` and `teamPlayerID` to successfully identify all
  3975  // existing users. Upgrading existing Game Center sign in integrations to SDK
  3976  // version 10.5.0 or later is irreversible.
  3977  func (r *AccountsService) SignInWithGameCenter(googlecloudidentitytoolkitv1signinwithgamecenterrequest *GoogleCloudIdentitytoolkitV1SignInWithGameCenterRequest) *AccountsSignInWithGameCenterCall {
  3978  	c := &AccountsSignInWithGameCenterCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3979  	c.googlecloudidentitytoolkitv1signinwithgamecenterrequest = googlecloudidentitytoolkitv1signinwithgamecenterrequest
  3980  	return c
  3981  }
  3982  
  3983  // Fields allows partial responses to be retrieved. See
  3984  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3985  // details.
  3986  func (c *AccountsSignInWithGameCenterCall) Fields(s ...googleapi.Field) *AccountsSignInWithGameCenterCall {
  3987  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3988  	return c
  3989  }
  3990  
  3991  // Context sets the context to be used in this call's Do method.
  3992  func (c *AccountsSignInWithGameCenterCall) Context(ctx context.Context) *AccountsSignInWithGameCenterCall {
  3993  	c.ctx_ = ctx
  3994  	return c
  3995  }
  3996  
  3997  // Header returns a http.Header that can be modified by the caller to add
  3998  // headers to the request.
  3999  func (c *AccountsSignInWithGameCenterCall) Header() http.Header {
  4000  	if c.header_ == nil {
  4001  		c.header_ = make(http.Header)
  4002  	}
  4003  	return c.header_
  4004  }
  4005  
  4006  func (c *AccountsSignInWithGameCenterCall) doRequest(alt string) (*http.Response, error) {
  4007  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4008  	var body io.Reader = nil
  4009  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signinwithgamecenterrequest)
  4010  	if err != nil {
  4011  		return nil, err
  4012  	}
  4013  	c.urlParams_.Set("alt", alt)
  4014  	c.urlParams_.Set("prettyPrint", "false")
  4015  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:signInWithGameCenter")
  4016  	urls += "?" + c.urlParams_.Encode()
  4017  	req, err := http.NewRequest("POST", urls, body)
  4018  	if err != nil {
  4019  		return nil, err
  4020  	}
  4021  	req.Header = reqHeaders
  4022  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4023  }
  4024  
  4025  // Do executes the "identitytoolkit.accounts.signInWithGameCenter" call.
  4026  // Any non-2xx status code is an error. Response headers are in either
  4027  // *GoogleCloudIdentitytoolkitV1SignInWithGameCenterResponse.ServerResponse.Head
  4028  // er or (if a response was returned at all) in
  4029  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4030  // whether the returned error was because http.StatusNotModified was returned.
  4031  func (c *AccountsSignInWithGameCenterCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignInWithGameCenterResponse, error) {
  4032  	gensupport.SetOptions(c.urlParams_, opts...)
  4033  	res, err := c.doRequest("json")
  4034  	if res != nil && res.StatusCode == http.StatusNotModified {
  4035  		if res.Body != nil {
  4036  			res.Body.Close()
  4037  		}
  4038  		return nil, gensupport.WrapError(&googleapi.Error{
  4039  			Code:   res.StatusCode,
  4040  			Header: res.Header,
  4041  		})
  4042  	}
  4043  	if err != nil {
  4044  		return nil, err
  4045  	}
  4046  	defer googleapi.CloseBody(res)
  4047  	if err := googleapi.CheckResponse(res); err != nil {
  4048  		return nil, gensupport.WrapError(err)
  4049  	}
  4050  	ret := &GoogleCloudIdentitytoolkitV1SignInWithGameCenterResponse{
  4051  		ServerResponse: googleapi.ServerResponse{
  4052  			Header:         res.Header,
  4053  			HTTPStatusCode: res.StatusCode,
  4054  		},
  4055  	}
  4056  	target := &ret
  4057  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4058  		return nil, err
  4059  	}
  4060  	return ret, nil
  4061  }
  4062  
  4063  type AccountsSignInWithIdpCall struct {
  4064  	s                                                *Service
  4065  	googlecloudidentitytoolkitv1signinwithidprequest *GoogleCloudIdentitytoolkitV1SignInWithIdpRequest
  4066  	urlParams_                                       gensupport.URLParams
  4067  	ctx_                                             context.Context
  4068  	header_                                          http.Header
  4069  }
  4070  
  4071  // SignInWithIdp: Signs in or signs up a user using credentials from an
  4072  // Identity Provider (IdP). This is done by manually providing an IdP
  4073  // credential, or by providing the authorization response obtained via the
  4074  // authorization request from CreateAuthUri. If the sign-in succeeds, a new
  4075  // Identity Platform ID token and refresh token are issued for the
  4076  // authenticated user. A new Identity Platform user account will be created if
  4077  // the user has not previously signed in to the IdP with the same account. In
  4078  // addition, when the "One account per email address" setting is enabled, there
  4079  // should not be an existing Identity Platform user account with the same email
  4080  // address for a new user account to be created. An API key
  4081  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  4082  // request in order to identify the Google Cloud project.
  4083  func (r *AccountsService) SignInWithIdp(googlecloudidentitytoolkitv1signinwithidprequest *GoogleCloudIdentitytoolkitV1SignInWithIdpRequest) *AccountsSignInWithIdpCall {
  4084  	c := &AccountsSignInWithIdpCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4085  	c.googlecloudidentitytoolkitv1signinwithidprequest = googlecloudidentitytoolkitv1signinwithidprequest
  4086  	return c
  4087  }
  4088  
  4089  // Fields allows partial responses to be retrieved. See
  4090  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4091  // details.
  4092  func (c *AccountsSignInWithIdpCall) Fields(s ...googleapi.Field) *AccountsSignInWithIdpCall {
  4093  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4094  	return c
  4095  }
  4096  
  4097  // Context sets the context to be used in this call's Do method.
  4098  func (c *AccountsSignInWithIdpCall) Context(ctx context.Context) *AccountsSignInWithIdpCall {
  4099  	c.ctx_ = ctx
  4100  	return c
  4101  }
  4102  
  4103  // Header returns a http.Header that can be modified by the caller to add
  4104  // headers to the request.
  4105  func (c *AccountsSignInWithIdpCall) Header() http.Header {
  4106  	if c.header_ == nil {
  4107  		c.header_ = make(http.Header)
  4108  	}
  4109  	return c.header_
  4110  }
  4111  
  4112  func (c *AccountsSignInWithIdpCall) doRequest(alt string) (*http.Response, error) {
  4113  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4114  	var body io.Reader = nil
  4115  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signinwithidprequest)
  4116  	if err != nil {
  4117  		return nil, err
  4118  	}
  4119  	c.urlParams_.Set("alt", alt)
  4120  	c.urlParams_.Set("prettyPrint", "false")
  4121  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:signInWithIdp")
  4122  	urls += "?" + c.urlParams_.Encode()
  4123  	req, err := http.NewRequest("POST", urls, body)
  4124  	if err != nil {
  4125  		return nil, err
  4126  	}
  4127  	req.Header = reqHeaders
  4128  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4129  }
  4130  
  4131  // Do executes the "identitytoolkit.accounts.signInWithIdp" call.
  4132  // Any non-2xx status code is an error. Response headers are in either
  4133  // *GoogleCloudIdentitytoolkitV1SignInWithIdpResponse.ServerResponse.Header or
  4134  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  4135  // googleapi.IsNotModified to check whether the returned error was because
  4136  // http.StatusNotModified was returned.
  4137  func (c *AccountsSignInWithIdpCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignInWithIdpResponse, error) {
  4138  	gensupport.SetOptions(c.urlParams_, opts...)
  4139  	res, err := c.doRequest("json")
  4140  	if res != nil && res.StatusCode == http.StatusNotModified {
  4141  		if res.Body != nil {
  4142  			res.Body.Close()
  4143  		}
  4144  		return nil, gensupport.WrapError(&googleapi.Error{
  4145  			Code:   res.StatusCode,
  4146  			Header: res.Header,
  4147  		})
  4148  	}
  4149  	if err != nil {
  4150  		return nil, err
  4151  	}
  4152  	defer googleapi.CloseBody(res)
  4153  	if err := googleapi.CheckResponse(res); err != nil {
  4154  		return nil, gensupport.WrapError(err)
  4155  	}
  4156  	ret := &GoogleCloudIdentitytoolkitV1SignInWithIdpResponse{
  4157  		ServerResponse: googleapi.ServerResponse{
  4158  			Header:         res.Header,
  4159  			HTTPStatusCode: res.StatusCode,
  4160  		},
  4161  	}
  4162  	target := &ret
  4163  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4164  		return nil, err
  4165  	}
  4166  	return ret, nil
  4167  }
  4168  
  4169  type AccountsSignInWithPasswordCall struct {
  4170  	s                                                     *Service
  4171  	googlecloudidentitytoolkitv1signinwithpasswordrequest *GoogleCloudIdentitytoolkitV1SignInWithPasswordRequest
  4172  	urlParams_                                            gensupport.URLParams
  4173  	ctx_                                                  context.Context
  4174  	header_                                               http.Header
  4175  }
  4176  
  4177  // SignInWithPassword: Signs in a user with email and password. If the sign-in
  4178  // succeeds, a new Identity Platform ID token and refresh token are issued for
  4179  // the authenticated user. An API key
  4180  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  4181  // request in order to identify the Google Cloud project.
  4182  func (r *AccountsService) SignInWithPassword(googlecloudidentitytoolkitv1signinwithpasswordrequest *GoogleCloudIdentitytoolkitV1SignInWithPasswordRequest) *AccountsSignInWithPasswordCall {
  4183  	c := &AccountsSignInWithPasswordCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4184  	c.googlecloudidentitytoolkitv1signinwithpasswordrequest = googlecloudidentitytoolkitv1signinwithpasswordrequest
  4185  	return c
  4186  }
  4187  
  4188  // Fields allows partial responses to be retrieved. See
  4189  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4190  // details.
  4191  func (c *AccountsSignInWithPasswordCall) Fields(s ...googleapi.Field) *AccountsSignInWithPasswordCall {
  4192  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4193  	return c
  4194  }
  4195  
  4196  // Context sets the context to be used in this call's Do method.
  4197  func (c *AccountsSignInWithPasswordCall) Context(ctx context.Context) *AccountsSignInWithPasswordCall {
  4198  	c.ctx_ = ctx
  4199  	return c
  4200  }
  4201  
  4202  // Header returns a http.Header that can be modified by the caller to add
  4203  // headers to the request.
  4204  func (c *AccountsSignInWithPasswordCall) Header() http.Header {
  4205  	if c.header_ == nil {
  4206  		c.header_ = make(http.Header)
  4207  	}
  4208  	return c.header_
  4209  }
  4210  
  4211  func (c *AccountsSignInWithPasswordCall) doRequest(alt string) (*http.Response, error) {
  4212  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4213  	var body io.Reader = nil
  4214  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signinwithpasswordrequest)
  4215  	if err != nil {
  4216  		return nil, err
  4217  	}
  4218  	c.urlParams_.Set("alt", alt)
  4219  	c.urlParams_.Set("prettyPrint", "false")
  4220  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:signInWithPassword")
  4221  	urls += "?" + c.urlParams_.Encode()
  4222  	req, err := http.NewRequest("POST", urls, body)
  4223  	if err != nil {
  4224  		return nil, err
  4225  	}
  4226  	req.Header = reqHeaders
  4227  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4228  }
  4229  
  4230  // Do executes the "identitytoolkit.accounts.signInWithPassword" call.
  4231  // Any non-2xx status code is an error. Response headers are in either
  4232  // *GoogleCloudIdentitytoolkitV1SignInWithPasswordResponse.ServerResponse.Header
  4233  //
  4234  //	or (if a response was returned at all) in error.(*googleapi.Error).Header.
  4235  //
  4236  // Use googleapi.IsNotModified to check whether the returned error was because
  4237  // http.StatusNotModified was returned.
  4238  func (c *AccountsSignInWithPasswordCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignInWithPasswordResponse, error) {
  4239  	gensupport.SetOptions(c.urlParams_, opts...)
  4240  	res, err := c.doRequest("json")
  4241  	if res != nil && res.StatusCode == http.StatusNotModified {
  4242  		if res.Body != nil {
  4243  			res.Body.Close()
  4244  		}
  4245  		return nil, gensupport.WrapError(&googleapi.Error{
  4246  			Code:   res.StatusCode,
  4247  			Header: res.Header,
  4248  		})
  4249  	}
  4250  	if err != nil {
  4251  		return nil, err
  4252  	}
  4253  	defer googleapi.CloseBody(res)
  4254  	if err := googleapi.CheckResponse(res); err != nil {
  4255  		return nil, gensupport.WrapError(err)
  4256  	}
  4257  	ret := &GoogleCloudIdentitytoolkitV1SignInWithPasswordResponse{
  4258  		ServerResponse: googleapi.ServerResponse{
  4259  			Header:         res.Header,
  4260  			HTTPStatusCode: res.StatusCode,
  4261  		},
  4262  	}
  4263  	target := &ret
  4264  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4265  		return nil, err
  4266  	}
  4267  	return ret, nil
  4268  }
  4269  
  4270  type AccountsSignInWithPhoneNumberCall struct {
  4271  	s                                                        *Service
  4272  	googlecloudidentitytoolkitv1signinwithphonenumberrequest *GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberRequest
  4273  	urlParams_                                               gensupport.URLParams
  4274  	ctx_                                                     context.Context
  4275  	header_                                                  http.Header
  4276  }
  4277  
  4278  // SignInWithPhoneNumber: Completes a phone number authentication attempt. If a
  4279  // user already exists with the given phone number, an ID token is minted for
  4280  // that user. Otherwise, a new user is created and associated with the phone
  4281  // number. This method may also be used to link a phone number to an existing
  4282  // user. To localize the text of the SMS sent to the user, set the HTTP header
  4283  // `X-Firebase-Locale` to the language code that corresponds with the user's
  4284  // locale. An API key (https://cloud.google.com/docs/authentication/api-keys)
  4285  // is required in the request in order to identify the Google Cloud project.
  4286  func (r *AccountsService) SignInWithPhoneNumber(googlecloudidentitytoolkitv1signinwithphonenumberrequest *GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberRequest) *AccountsSignInWithPhoneNumberCall {
  4287  	c := &AccountsSignInWithPhoneNumberCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4288  	c.googlecloudidentitytoolkitv1signinwithphonenumberrequest = googlecloudidentitytoolkitv1signinwithphonenumberrequest
  4289  	return c
  4290  }
  4291  
  4292  // Fields allows partial responses to be retrieved. See
  4293  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4294  // details.
  4295  func (c *AccountsSignInWithPhoneNumberCall) Fields(s ...googleapi.Field) *AccountsSignInWithPhoneNumberCall {
  4296  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4297  	return c
  4298  }
  4299  
  4300  // Context sets the context to be used in this call's Do method.
  4301  func (c *AccountsSignInWithPhoneNumberCall) Context(ctx context.Context) *AccountsSignInWithPhoneNumberCall {
  4302  	c.ctx_ = ctx
  4303  	return c
  4304  }
  4305  
  4306  // Header returns a http.Header that can be modified by the caller to add
  4307  // headers to the request.
  4308  func (c *AccountsSignInWithPhoneNumberCall) Header() http.Header {
  4309  	if c.header_ == nil {
  4310  		c.header_ = make(http.Header)
  4311  	}
  4312  	return c.header_
  4313  }
  4314  
  4315  func (c *AccountsSignInWithPhoneNumberCall) doRequest(alt string) (*http.Response, error) {
  4316  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4317  	var body io.Reader = nil
  4318  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signinwithphonenumberrequest)
  4319  	if err != nil {
  4320  		return nil, err
  4321  	}
  4322  	c.urlParams_.Set("alt", alt)
  4323  	c.urlParams_.Set("prettyPrint", "false")
  4324  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:signInWithPhoneNumber")
  4325  	urls += "?" + c.urlParams_.Encode()
  4326  	req, err := http.NewRequest("POST", urls, body)
  4327  	if err != nil {
  4328  		return nil, err
  4329  	}
  4330  	req.Header = reqHeaders
  4331  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4332  }
  4333  
  4334  // Do executes the "identitytoolkit.accounts.signInWithPhoneNumber" call.
  4335  // Any non-2xx status code is an error. Response headers are in either
  4336  // *GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberResponse.ServerResponse.Hea
  4337  // der or (if a response was returned at all) in
  4338  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4339  // whether the returned error was because http.StatusNotModified was returned.
  4340  func (c *AccountsSignInWithPhoneNumberCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberResponse, error) {
  4341  	gensupport.SetOptions(c.urlParams_, opts...)
  4342  	res, err := c.doRequest("json")
  4343  	if res != nil && res.StatusCode == http.StatusNotModified {
  4344  		if res.Body != nil {
  4345  			res.Body.Close()
  4346  		}
  4347  		return nil, gensupport.WrapError(&googleapi.Error{
  4348  			Code:   res.StatusCode,
  4349  			Header: res.Header,
  4350  		})
  4351  	}
  4352  	if err != nil {
  4353  		return nil, err
  4354  	}
  4355  	defer googleapi.CloseBody(res)
  4356  	if err := googleapi.CheckResponse(res); err != nil {
  4357  		return nil, gensupport.WrapError(err)
  4358  	}
  4359  	ret := &GoogleCloudIdentitytoolkitV1SignInWithPhoneNumberResponse{
  4360  		ServerResponse: googleapi.ServerResponse{
  4361  			Header:         res.Header,
  4362  			HTTPStatusCode: res.StatusCode,
  4363  		},
  4364  	}
  4365  	target := &ret
  4366  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4367  		return nil, err
  4368  	}
  4369  	return ret, nil
  4370  }
  4371  
  4372  type AccountsSignUpCall struct {
  4373  	s                                         *Service
  4374  	googlecloudidentitytoolkitv1signuprequest *GoogleCloudIdentitytoolkitV1SignUpRequest
  4375  	urlParams_                                gensupport.URLParams
  4376  	ctx_                                      context.Context
  4377  	header_                                   http.Header
  4378  }
  4379  
  4380  // SignUp: Signs up a new email and password user or anonymous user, or
  4381  // upgrades an anonymous user to email and password. For an admin request with
  4382  // a Google OAuth 2.0 credential with the proper permissions
  4383  // (https://cloud.google.com/identity-platform/docs/access-control), creates a
  4384  // new anonymous, email and password, or phone number user. An API key
  4385  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  4386  // request in order to identify the Google Cloud project.
  4387  func (r *AccountsService) SignUp(googlecloudidentitytoolkitv1signuprequest *GoogleCloudIdentitytoolkitV1SignUpRequest) *AccountsSignUpCall {
  4388  	c := &AccountsSignUpCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4389  	c.googlecloudidentitytoolkitv1signuprequest = googlecloudidentitytoolkitv1signuprequest
  4390  	return c
  4391  }
  4392  
  4393  // Fields allows partial responses to be retrieved. See
  4394  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4395  // details.
  4396  func (c *AccountsSignUpCall) Fields(s ...googleapi.Field) *AccountsSignUpCall {
  4397  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4398  	return c
  4399  }
  4400  
  4401  // Context sets the context to be used in this call's Do method.
  4402  func (c *AccountsSignUpCall) Context(ctx context.Context) *AccountsSignUpCall {
  4403  	c.ctx_ = ctx
  4404  	return c
  4405  }
  4406  
  4407  // Header returns a http.Header that can be modified by the caller to add
  4408  // headers to the request.
  4409  func (c *AccountsSignUpCall) Header() http.Header {
  4410  	if c.header_ == nil {
  4411  		c.header_ = make(http.Header)
  4412  	}
  4413  	return c.header_
  4414  }
  4415  
  4416  func (c *AccountsSignUpCall) doRequest(alt string) (*http.Response, error) {
  4417  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4418  	var body io.Reader = nil
  4419  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signuprequest)
  4420  	if err != nil {
  4421  		return nil, err
  4422  	}
  4423  	c.urlParams_.Set("alt", alt)
  4424  	c.urlParams_.Set("prettyPrint", "false")
  4425  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:signUp")
  4426  	urls += "?" + c.urlParams_.Encode()
  4427  	req, err := http.NewRequest("POST", urls, body)
  4428  	if err != nil {
  4429  		return nil, err
  4430  	}
  4431  	req.Header = reqHeaders
  4432  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4433  }
  4434  
  4435  // Do executes the "identitytoolkit.accounts.signUp" call.
  4436  // Any non-2xx status code is an error. Response headers are in either
  4437  // *GoogleCloudIdentitytoolkitV1SignUpResponse.ServerResponse.Header or (if a
  4438  // response was returned at all) in error.(*googleapi.Error).Header. Use
  4439  // googleapi.IsNotModified to check whether the returned error was because
  4440  // http.StatusNotModified was returned.
  4441  func (c *AccountsSignUpCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignUpResponse, error) {
  4442  	gensupport.SetOptions(c.urlParams_, opts...)
  4443  	res, err := c.doRequest("json")
  4444  	if res != nil && res.StatusCode == http.StatusNotModified {
  4445  		if res.Body != nil {
  4446  			res.Body.Close()
  4447  		}
  4448  		return nil, gensupport.WrapError(&googleapi.Error{
  4449  			Code:   res.StatusCode,
  4450  			Header: res.Header,
  4451  		})
  4452  	}
  4453  	if err != nil {
  4454  		return nil, err
  4455  	}
  4456  	defer googleapi.CloseBody(res)
  4457  	if err := googleapi.CheckResponse(res); err != nil {
  4458  		return nil, gensupport.WrapError(err)
  4459  	}
  4460  	ret := &GoogleCloudIdentitytoolkitV1SignUpResponse{
  4461  		ServerResponse: googleapi.ServerResponse{
  4462  			Header:         res.Header,
  4463  			HTTPStatusCode: res.StatusCode,
  4464  		},
  4465  	}
  4466  	target := &ret
  4467  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4468  		return nil, err
  4469  	}
  4470  	return ret, nil
  4471  }
  4472  
  4473  type AccountsUpdateCall struct {
  4474  	s                                                 *Service
  4475  	googlecloudidentitytoolkitv1setaccountinforequest *GoogleCloudIdentitytoolkitV1SetAccountInfoRequest
  4476  	urlParams_                                        gensupport.URLParams
  4477  	ctx_                                              context.Context
  4478  	header_                                           http.Header
  4479  }
  4480  
  4481  // Update: Updates account-related information for the specified user by
  4482  // setting specific fields or applying action codes. Requests from
  4483  // administrators and end users are supported.
  4484  func (r *AccountsService) Update(googlecloudidentitytoolkitv1setaccountinforequest *GoogleCloudIdentitytoolkitV1SetAccountInfoRequest) *AccountsUpdateCall {
  4485  	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4486  	c.googlecloudidentitytoolkitv1setaccountinforequest = googlecloudidentitytoolkitv1setaccountinforequest
  4487  	return c
  4488  }
  4489  
  4490  // Fields allows partial responses to be retrieved. See
  4491  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4492  // details.
  4493  func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
  4494  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4495  	return c
  4496  }
  4497  
  4498  // Context sets the context to be used in this call's Do method.
  4499  func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
  4500  	c.ctx_ = ctx
  4501  	return c
  4502  }
  4503  
  4504  // Header returns a http.Header that can be modified by the caller to add
  4505  // headers to the request.
  4506  func (c *AccountsUpdateCall) Header() http.Header {
  4507  	if c.header_ == nil {
  4508  		c.header_ = make(http.Header)
  4509  	}
  4510  	return c.header_
  4511  }
  4512  
  4513  func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
  4514  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4515  	var body io.Reader = nil
  4516  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1setaccountinforequest)
  4517  	if err != nil {
  4518  		return nil, err
  4519  	}
  4520  	c.urlParams_.Set("alt", alt)
  4521  	c.urlParams_.Set("prettyPrint", "false")
  4522  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:update")
  4523  	urls += "?" + c.urlParams_.Encode()
  4524  	req, err := http.NewRequest("POST", urls, body)
  4525  	if err != nil {
  4526  		return nil, err
  4527  	}
  4528  	req.Header = reqHeaders
  4529  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4530  }
  4531  
  4532  // Do executes the "identitytoolkit.accounts.update" call.
  4533  // Any non-2xx status code is an error. Response headers are in either
  4534  // *GoogleCloudIdentitytoolkitV1SetAccountInfoResponse.ServerResponse.Header or
  4535  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  4536  // googleapi.IsNotModified to check whether the returned error was because
  4537  // http.StatusNotModified was returned.
  4538  func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SetAccountInfoResponse, error) {
  4539  	gensupport.SetOptions(c.urlParams_, opts...)
  4540  	res, err := c.doRequest("json")
  4541  	if res != nil && res.StatusCode == http.StatusNotModified {
  4542  		if res.Body != nil {
  4543  			res.Body.Close()
  4544  		}
  4545  		return nil, gensupport.WrapError(&googleapi.Error{
  4546  			Code:   res.StatusCode,
  4547  			Header: res.Header,
  4548  		})
  4549  	}
  4550  	if err != nil {
  4551  		return nil, err
  4552  	}
  4553  	defer googleapi.CloseBody(res)
  4554  	if err := googleapi.CheckResponse(res); err != nil {
  4555  		return nil, gensupport.WrapError(err)
  4556  	}
  4557  	ret := &GoogleCloudIdentitytoolkitV1SetAccountInfoResponse{
  4558  		ServerResponse: googleapi.ServerResponse{
  4559  			Header:         res.Header,
  4560  			HTTPStatusCode: res.StatusCode,
  4561  		},
  4562  	}
  4563  	target := &ret
  4564  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4565  		return nil, err
  4566  	}
  4567  	return ret, nil
  4568  }
  4569  
  4570  type AccountsVerifyIosClientCall struct {
  4571  	s                                                  *Service
  4572  	googlecloudidentitytoolkitv1verifyiosclientrequest *GoogleCloudIdentitytoolkitV1VerifyIosClientRequest
  4573  	urlParams_                                         gensupport.URLParams
  4574  	ctx_                                               context.Context
  4575  	header_                                            http.Header
  4576  }
  4577  
  4578  // VerifyIosClient: Verifies an iOS client is a real iOS device. If the request
  4579  // is valid, a receipt will be sent in the response and a secret will be sent
  4580  // via Apple Push Notification Service. The client should send both of them
  4581  // back to certain Identity Platform APIs in a later call (for example,
  4582  // /accounts:sendVerificationCode), in order to verify the client. The bundle
  4583  // ID is required in the request header as `x-ios-bundle-identifier`. An API
  4584  // key (https://cloud.google.com/docs/authentication/api-keys) is required in
  4585  // the request in order to identify the Google Cloud project.
  4586  func (r *AccountsService) VerifyIosClient(googlecloudidentitytoolkitv1verifyiosclientrequest *GoogleCloudIdentitytoolkitV1VerifyIosClientRequest) *AccountsVerifyIosClientCall {
  4587  	c := &AccountsVerifyIosClientCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4588  	c.googlecloudidentitytoolkitv1verifyiosclientrequest = googlecloudidentitytoolkitv1verifyiosclientrequest
  4589  	return c
  4590  }
  4591  
  4592  // Fields allows partial responses to be retrieved. See
  4593  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4594  // details.
  4595  func (c *AccountsVerifyIosClientCall) Fields(s ...googleapi.Field) *AccountsVerifyIosClientCall {
  4596  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4597  	return c
  4598  }
  4599  
  4600  // Context sets the context to be used in this call's Do method.
  4601  func (c *AccountsVerifyIosClientCall) Context(ctx context.Context) *AccountsVerifyIosClientCall {
  4602  	c.ctx_ = ctx
  4603  	return c
  4604  }
  4605  
  4606  // Header returns a http.Header that can be modified by the caller to add
  4607  // headers to the request.
  4608  func (c *AccountsVerifyIosClientCall) Header() http.Header {
  4609  	if c.header_ == nil {
  4610  		c.header_ = make(http.Header)
  4611  	}
  4612  	return c.header_
  4613  }
  4614  
  4615  func (c *AccountsVerifyIosClientCall) doRequest(alt string) (*http.Response, error) {
  4616  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4617  	var body io.Reader = nil
  4618  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1verifyiosclientrequest)
  4619  	if err != nil {
  4620  		return nil, err
  4621  	}
  4622  	c.urlParams_.Set("alt", alt)
  4623  	c.urlParams_.Set("prettyPrint", "false")
  4624  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/accounts:verifyIosClient")
  4625  	urls += "?" + c.urlParams_.Encode()
  4626  	req, err := http.NewRequest("POST", urls, body)
  4627  	if err != nil {
  4628  		return nil, err
  4629  	}
  4630  	req.Header = reqHeaders
  4631  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4632  }
  4633  
  4634  // Do executes the "identitytoolkit.accounts.verifyIosClient" call.
  4635  // Any non-2xx status code is an error. Response headers are in either
  4636  // *GoogleCloudIdentitytoolkitV1VerifyIosClientResponse.ServerResponse.Header
  4637  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  4638  // Use googleapi.IsNotModified to check whether the returned error was because
  4639  // http.StatusNotModified was returned.
  4640  func (c *AccountsVerifyIosClientCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1VerifyIosClientResponse, error) {
  4641  	gensupport.SetOptions(c.urlParams_, opts...)
  4642  	res, err := c.doRequest("json")
  4643  	if res != nil && res.StatusCode == http.StatusNotModified {
  4644  		if res.Body != nil {
  4645  			res.Body.Close()
  4646  		}
  4647  		return nil, gensupport.WrapError(&googleapi.Error{
  4648  			Code:   res.StatusCode,
  4649  			Header: res.Header,
  4650  		})
  4651  	}
  4652  	if err != nil {
  4653  		return nil, err
  4654  	}
  4655  	defer googleapi.CloseBody(res)
  4656  	if err := googleapi.CheckResponse(res); err != nil {
  4657  		return nil, gensupport.WrapError(err)
  4658  	}
  4659  	ret := &GoogleCloudIdentitytoolkitV1VerifyIosClientResponse{
  4660  		ServerResponse: googleapi.ServerResponse{
  4661  			Header:         res.Header,
  4662  			HTTPStatusCode: res.StatusCode,
  4663  		},
  4664  	}
  4665  	target := &ret
  4666  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4667  		return nil, err
  4668  	}
  4669  	return ret, nil
  4670  }
  4671  
  4672  type ProjectsAccountsCall struct {
  4673  	s                                         *Service
  4674  	targetProjectId                           string
  4675  	googlecloudidentitytoolkitv1signuprequest *GoogleCloudIdentitytoolkitV1SignUpRequest
  4676  	urlParams_                                gensupport.URLParams
  4677  	ctx_                                      context.Context
  4678  	header_                                   http.Header
  4679  }
  4680  
  4681  // Accounts: Signs up a new email and password user or anonymous user, or
  4682  // upgrades an anonymous user to email and password. For an admin request with
  4683  // a Google OAuth 2.0 credential with the proper permissions
  4684  // (https://cloud.google.com/identity-platform/docs/access-control), creates a
  4685  // new anonymous, email and password, or phone number user. An API key
  4686  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  4687  // request in order to identify the Google Cloud project.
  4688  //
  4689  //   - targetProjectId: The project ID of the project which the user should
  4690  //     belong to. Specifying this field requires a Google OAuth 2.0 credential
  4691  //     with the proper permissions
  4692  //     (https://cloud.google.com/identity-platform/docs/access-control). If this
  4693  //     is not set, the target project is inferred from the scope associated to
  4694  //     the Bearer access token.
  4695  func (r *ProjectsService) Accounts(targetProjectId string, googlecloudidentitytoolkitv1signuprequest *GoogleCloudIdentitytoolkitV1SignUpRequest) *ProjectsAccountsCall {
  4696  	c := &ProjectsAccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4697  	c.targetProjectId = targetProjectId
  4698  	c.googlecloudidentitytoolkitv1signuprequest = googlecloudidentitytoolkitv1signuprequest
  4699  	return c
  4700  }
  4701  
  4702  // Fields allows partial responses to be retrieved. See
  4703  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4704  // details.
  4705  func (c *ProjectsAccountsCall) Fields(s ...googleapi.Field) *ProjectsAccountsCall {
  4706  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4707  	return c
  4708  }
  4709  
  4710  // Context sets the context to be used in this call's Do method.
  4711  func (c *ProjectsAccountsCall) Context(ctx context.Context) *ProjectsAccountsCall {
  4712  	c.ctx_ = ctx
  4713  	return c
  4714  }
  4715  
  4716  // Header returns a http.Header that can be modified by the caller to add
  4717  // headers to the request.
  4718  func (c *ProjectsAccountsCall) Header() http.Header {
  4719  	if c.header_ == nil {
  4720  		c.header_ = make(http.Header)
  4721  	}
  4722  	return c.header_
  4723  }
  4724  
  4725  func (c *ProjectsAccountsCall) doRequest(alt string) (*http.Response, error) {
  4726  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4727  	var body io.Reader = nil
  4728  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signuprequest)
  4729  	if err != nil {
  4730  		return nil, err
  4731  	}
  4732  	c.urlParams_.Set("alt", alt)
  4733  	c.urlParams_.Set("prettyPrint", "false")
  4734  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts")
  4735  	urls += "?" + c.urlParams_.Encode()
  4736  	req, err := http.NewRequest("POST", urls, body)
  4737  	if err != nil {
  4738  		return nil, err
  4739  	}
  4740  	req.Header = reqHeaders
  4741  	googleapi.Expand(req.URL, map[string]string{
  4742  		"targetProjectId": c.targetProjectId,
  4743  	})
  4744  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4745  }
  4746  
  4747  // Do executes the "identitytoolkit.projects.accounts" call.
  4748  // Any non-2xx status code is an error. Response headers are in either
  4749  // *GoogleCloudIdentitytoolkitV1SignUpResponse.ServerResponse.Header or (if a
  4750  // response was returned at all) in error.(*googleapi.Error).Header. Use
  4751  // googleapi.IsNotModified to check whether the returned error was because
  4752  // http.StatusNotModified was returned.
  4753  func (c *ProjectsAccountsCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignUpResponse, error) {
  4754  	gensupport.SetOptions(c.urlParams_, opts...)
  4755  	res, err := c.doRequest("json")
  4756  	if res != nil && res.StatusCode == http.StatusNotModified {
  4757  		if res.Body != nil {
  4758  			res.Body.Close()
  4759  		}
  4760  		return nil, gensupport.WrapError(&googleapi.Error{
  4761  			Code:   res.StatusCode,
  4762  			Header: res.Header,
  4763  		})
  4764  	}
  4765  	if err != nil {
  4766  		return nil, err
  4767  	}
  4768  	defer googleapi.CloseBody(res)
  4769  	if err := googleapi.CheckResponse(res); err != nil {
  4770  		return nil, gensupport.WrapError(err)
  4771  	}
  4772  	ret := &GoogleCloudIdentitytoolkitV1SignUpResponse{
  4773  		ServerResponse: googleapi.ServerResponse{
  4774  			Header:         res.Header,
  4775  			HTTPStatusCode: res.StatusCode,
  4776  		},
  4777  	}
  4778  	target := &ret
  4779  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4780  		return nil, err
  4781  	}
  4782  	return ret, nil
  4783  }
  4784  
  4785  type ProjectsCreateSessionCookieCall struct {
  4786  	s                                                      *Service
  4787  	targetProjectId                                        string
  4788  	googlecloudidentitytoolkitv1createsessioncookierequest *GoogleCloudIdentitytoolkitV1CreateSessionCookieRequest
  4789  	urlParams_                                             gensupport.URLParams
  4790  	ctx_                                                   context.Context
  4791  	header_                                                http.Header
  4792  }
  4793  
  4794  // CreateSessionCookie: Creates a session cookie for the given Identity
  4795  // Platform ID token. The session cookie is used by the client to preserve the
  4796  // user's login state.
  4797  //
  4798  // - targetProjectId: The ID of the project that the account belongs to.
  4799  func (r *ProjectsService) CreateSessionCookie(targetProjectId string, googlecloudidentitytoolkitv1createsessioncookierequest *GoogleCloudIdentitytoolkitV1CreateSessionCookieRequest) *ProjectsCreateSessionCookieCall {
  4800  	c := &ProjectsCreateSessionCookieCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4801  	c.targetProjectId = targetProjectId
  4802  	c.googlecloudidentitytoolkitv1createsessioncookierequest = googlecloudidentitytoolkitv1createsessioncookierequest
  4803  	return c
  4804  }
  4805  
  4806  // Fields allows partial responses to be retrieved. See
  4807  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4808  // details.
  4809  func (c *ProjectsCreateSessionCookieCall) Fields(s ...googleapi.Field) *ProjectsCreateSessionCookieCall {
  4810  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4811  	return c
  4812  }
  4813  
  4814  // Context sets the context to be used in this call's Do method.
  4815  func (c *ProjectsCreateSessionCookieCall) Context(ctx context.Context) *ProjectsCreateSessionCookieCall {
  4816  	c.ctx_ = ctx
  4817  	return c
  4818  }
  4819  
  4820  // Header returns a http.Header that can be modified by the caller to add
  4821  // headers to the request.
  4822  func (c *ProjectsCreateSessionCookieCall) Header() http.Header {
  4823  	if c.header_ == nil {
  4824  		c.header_ = make(http.Header)
  4825  	}
  4826  	return c.header_
  4827  }
  4828  
  4829  func (c *ProjectsCreateSessionCookieCall) doRequest(alt string) (*http.Response, error) {
  4830  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4831  	var body io.Reader = nil
  4832  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1createsessioncookierequest)
  4833  	if err != nil {
  4834  		return nil, err
  4835  	}
  4836  	c.urlParams_.Set("alt", alt)
  4837  	c.urlParams_.Set("prettyPrint", "false")
  4838  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}:createSessionCookie")
  4839  	urls += "?" + c.urlParams_.Encode()
  4840  	req, err := http.NewRequest("POST", urls, body)
  4841  	if err != nil {
  4842  		return nil, err
  4843  	}
  4844  	req.Header = reqHeaders
  4845  	googleapi.Expand(req.URL, map[string]string{
  4846  		"targetProjectId": c.targetProjectId,
  4847  	})
  4848  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4849  }
  4850  
  4851  // Do executes the "identitytoolkit.projects.createSessionCookie" call.
  4852  // Any non-2xx status code is an error. Response headers are in either
  4853  // *GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse.ServerResponse.Heade
  4854  // r or (if a response was returned at all) in error.(*googleapi.Error).Header.
  4855  // Use googleapi.IsNotModified to check whether the returned error was because
  4856  // http.StatusNotModified was returned.
  4857  func (c *ProjectsCreateSessionCookieCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse, error) {
  4858  	gensupport.SetOptions(c.urlParams_, opts...)
  4859  	res, err := c.doRequest("json")
  4860  	if res != nil && res.StatusCode == http.StatusNotModified {
  4861  		if res.Body != nil {
  4862  			res.Body.Close()
  4863  		}
  4864  		return nil, gensupport.WrapError(&googleapi.Error{
  4865  			Code:   res.StatusCode,
  4866  			Header: res.Header,
  4867  		})
  4868  	}
  4869  	if err != nil {
  4870  		return nil, err
  4871  	}
  4872  	defer googleapi.CloseBody(res)
  4873  	if err := googleapi.CheckResponse(res); err != nil {
  4874  		return nil, gensupport.WrapError(err)
  4875  	}
  4876  	ret := &GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse{
  4877  		ServerResponse: googleapi.ServerResponse{
  4878  			Header:         res.Header,
  4879  			HTTPStatusCode: res.StatusCode,
  4880  		},
  4881  	}
  4882  	target := &ret
  4883  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4884  		return nil, err
  4885  	}
  4886  	return ret, nil
  4887  }
  4888  
  4889  type ProjectsQueryAccountsCall struct {
  4890  	s                                                *Service
  4891  	targetProjectId                                  string
  4892  	googlecloudidentitytoolkitv1queryuserinforequest *GoogleCloudIdentitytoolkitV1QueryUserInfoRequest
  4893  	urlParams_                                       gensupport.URLParams
  4894  	ctx_                                             context.Context
  4895  	header_                                          http.Header
  4896  }
  4897  
  4898  // QueryAccounts: Looks up user accounts within a project or a tenant based on
  4899  // conditions in the request.
  4900  //
  4901  // - targetProjectId: The ID of the project to which the result is scoped.
  4902  func (r *ProjectsService) QueryAccounts(targetProjectId string, googlecloudidentitytoolkitv1queryuserinforequest *GoogleCloudIdentitytoolkitV1QueryUserInfoRequest) *ProjectsQueryAccountsCall {
  4903  	c := &ProjectsQueryAccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4904  	c.targetProjectId = targetProjectId
  4905  	c.googlecloudidentitytoolkitv1queryuserinforequest = googlecloudidentitytoolkitv1queryuserinforequest
  4906  	return c
  4907  }
  4908  
  4909  // Fields allows partial responses to be retrieved. See
  4910  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4911  // details.
  4912  func (c *ProjectsQueryAccountsCall) Fields(s ...googleapi.Field) *ProjectsQueryAccountsCall {
  4913  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4914  	return c
  4915  }
  4916  
  4917  // Context sets the context to be used in this call's Do method.
  4918  func (c *ProjectsQueryAccountsCall) Context(ctx context.Context) *ProjectsQueryAccountsCall {
  4919  	c.ctx_ = ctx
  4920  	return c
  4921  }
  4922  
  4923  // Header returns a http.Header that can be modified by the caller to add
  4924  // headers to the request.
  4925  func (c *ProjectsQueryAccountsCall) Header() http.Header {
  4926  	if c.header_ == nil {
  4927  		c.header_ = make(http.Header)
  4928  	}
  4929  	return c.header_
  4930  }
  4931  
  4932  func (c *ProjectsQueryAccountsCall) doRequest(alt string) (*http.Response, error) {
  4933  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4934  	var body io.Reader = nil
  4935  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1queryuserinforequest)
  4936  	if err != nil {
  4937  		return nil, err
  4938  	}
  4939  	c.urlParams_.Set("alt", alt)
  4940  	c.urlParams_.Set("prettyPrint", "false")
  4941  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}:queryAccounts")
  4942  	urls += "?" + c.urlParams_.Encode()
  4943  	req, err := http.NewRequest("POST", urls, body)
  4944  	if err != nil {
  4945  		return nil, err
  4946  	}
  4947  	req.Header = reqHeaders
  4948  	googleapi.Expand(req.URL, map[string]string{
  4949  		"targetProjectId": c.targetProjectId,
  4950  	})
  4951  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4952  }
  4953  
  4954  // Do executes the "identitytoolkit.projects.queryAccounts" call.
  4955  // Any non-2xx status code is an error. Response headers are in either
  4956  // *GoogleCloudIdentitytoolkitV1QueryUserInfoResponse.ServerResponse.Header or
  4957  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  4958  // googleapi.IsNotModified to check whether the returned error was because
  4959  // http.StatusNotModified was returned.
  4960  func (c *ProjectsQueryAccountsCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1QueryUserInfoResponse, error) {
  4961  	gensupport.SetOptions(c.urlParams_, opts...)
  4962  	res, err := c.doRequest("json")
  4963  	if res != nil && res.StatusCode == http.StatusNotModified {
  4964  		if res.Body != nil {
  4965  			res.Body.Close()
  4966  		}
  4967  		return nil, gensupport.WrapError(&googleapi.Error{
  4968  			Code:   res.StatusCode,
  4969  			Header: res.Header,
  4970  		})
  4971  	}
  4972  	if err != nil {
  4973  		return nil, err
  4974  	}
  4975  	defer googleapi.CloseBody(res)
  4976  	if err := googleapi.CheckResponse(res); err != nil {
  4977  		return nil, gensupport.WrapError(err)
  4978  	}
  4979  	ret := &GoogleCloudIdentitytoolkitV1QueryUserInfoResponse{
  4980  		ServerResponse: googleapi.ServerResponse{
  4981  			Header:         res.Header,
  4982  			HTTPStatusCode: res.StatusCode,
  4983  		},
  4984  	}
  4985  	target := &ret
  4986  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4987  		return nil, err
  4988  	}
  4989  	return ret, nil
  4990  }
  4991  
  4992  type ProjectsAccountsBatchCreateCall struct {
  4993  	s                                                *Service
  4994  	targetProjectId                                  string
  4995  	googlecloudidentitytoolkitv1uploadaccountrequest *GoogleCloudIdentitytoolkitV1UploadAccountRequest
  4996  	urlParams_                                       gensupport.URLParams
  4997  	ctx_                                             context.Context
  4998  	header_                                          http.Header
  4999  }
  5000  
  5001  // BatchCreate: Uploads multiple accounts into the Google Cloud project. If
  5002  // there is a problem uploading one or more of the accounts, the rest will be
  5003  // uploaded, and a list of the errors will be returned. To use this method
  5004  // requires a Google OAuth 2.0 credential with proper permissions
  5005  // (https://cloud.google.com/identity-platform/docs/access-control).
  5006  //
  5007  //   - targetProjectId: The Project ID of the Identity Platform project which the
  5008  //     account belongs to.
  5009  func (r *ProjectsAccountsService) BatchCreate(targetProjectId string, googlecloudidentitytoolkitv1uploadaccountrequest *GoogleCloudIdentitytoolkitV1UploadAccountRequest) *ProjectsAccountsBatchCreateCall {
  5010  	c := &ProjectsAccountsBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5011  	c.targetProjectId = targetProjectId
  5012  	c.googlecloudidentitytoolkitv1uploadaccountrequest = googlecloudidentitytoolkitv1uploadaccountrequest
  5013  	return c
  5014  }
  5015  
  5016  // Fields allows partial responses to be retrieved. See
  5017  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5018  // details.
  5019  func (c *ProjectsAccountsBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsAccountsBatchCreateCall {
  5020  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5021  	return c
  5022  }
  5023  
  5024  // Context sets the context to be used in this call's Do method.
  5025  func (c *ProjectsAccountsBatchCreateCall) Context(ctx context.Context) *ProjectsAccountsBatchCreateCall {
  5026  	c.ctx_ = ctx
  5027  	return c
  5028  }
  5029  
  5030  // Header returns a http.Header that can be modified by the caller to add
  5031  // headers to the request.
  5032  func (c *ProjectsAccountsBatchCreateCall) Header() http.Header {
  5033  	if c.header_ == nil {
  5034  		c.header_ = make(http.Header)
  5035  	}
  5036  	return c.header_
  5037  }
  5038  
  5039  func (c *ProjectsAccountsBatchCreateCall) doRequest(alt string) (*http.Response, error) {
  5040  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5041  	var body io.Reader = nil
  5042  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1uploadaccountrequest)
  5043  	if err != nil {
  5044  		return nil, err
  5045  	}
  5046  	c.urlParams_.Set("alt", alt)
  5047  	c.urlParams_.Set("prettyPrint", "false")
  5048  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts:batchCreate")
  5049  	urls += "?" + c.urlParams_.Encode()
  5050  	req, err := http.NewRequest("POST", urls, body)
  5051  	if err != nil {
  5052  		return nil, err
  5053  	}
  5054  	req.Header = reqHeaders
  5055  	googleapi.Expand(req.URL, map[string]string{
  5056  		"targetProjectId": c.targetProjectId,
  5057  	})
  5058  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5059  }
  5060  
  5061  // Do executes the "identitytoolkit.projects.accounts.batchCreate" call.
  5062  // Any non-2xx status code is an error. Response headers are in either
  5063  // *GoogleCloudIdentitytoolkitV1UploadAccountResponse.ServerResponse.Header or
  5064  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5065  // googleapi.IsNotModified to check whether the returned error was because
  5066  // http.StatusNotModified was returned.
  5067  func (c *ProjectsAccountsBatchCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1UploadAccountResponse, error) {
  5068  	gensupport.SetOptions(c.urlParams_, opts...)
  5069  	res, err := c.doRequest("json")
  5070  	if res != nil && res.StatusCode == http.StatusNotModified {
  5071  		if res.Body != nil {
  5072  			res.Body.Close()
  5073  		}
  5074  		return nil, gensupport.WrapError(&googleapi.Error{
  5075  			Code:   res.StatusCode,
  5076  			Header: res.Header,
  5077  		})
  5078  	}
  5079  	if err != nil {
  5080  		return nil, err
  5081  	}
  5082  	defer googleapi.CloseBody(res)
  5083  	if err := googleapi.CheckResponse(res); err != nil {
  5084  		return nil, gensupport.WrapError(err)
  5085  	}
  5086  	ret := &GoogleCloudIdentitytoolkitV1UploadAccountResponse{
  5087  		ServerResponse: googleapi.ServerResponse{
  5088  			Header:         res.Header,
  5089  			HTTPStatusCode: res.StatusCode,
  5090  		},
  5091  	}
  5092  	target := &ret
  5093  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5094  		return nil, err
  5095  	}
  5096  	return ret, nil
  5097  }
  5098  
  5099  type ProjectsAccountsBatchDeleteCall struct {
  5100  	s                                                      *Service
  5101  	targetProjectId                                        string
  5102  	googlecloudidentitytoolkitv1batchdeleteaccountsrequest *GoogleCloudIdentitytoolkitV1BatchDeleteAccountsRequest
  5103  	urlParams_                                             gensupport.URLParams
  5104  	ctx_                                                   context.Context
  5105  	header_                                                http.Header
  5106  }
  5107  
  5108  // BatchDelete: Batch deletes multiple accounts. For accounts that fail to be
  5109  // deleted, error info is contained in the response. The method ignores
  5110  // accounts that do not exist or are duplicated in the request. This method
  5111  // requires a Google OAuth 2.0 credential with proper [permissions]
  5112  // (https://cloud.google.com/identity-platform/docs/access-control).
  5113  //
  5114  //   - targetProjectId: If `tenant_id` is specified, the ID of the Google Cloud
  5115  //     project that the Identity Platform tenant belongs to. Otherwise, the ID of
  5116  //     the Google Cloud project that accounts belong to.
  5117  func (r *ProjectsAccountsService) BatchDelete(targetProjectId string, googlecloudidentitytoolkitv1batchdeleteaccountsrequest *GoogleCloudIdentitytoolkitV1BatchDeleteAccountsRequest) *ProjectsAccountsBatchDeleteCall {
  5118  	c := &ProjectsAccountsBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5119  	c.targetProjectId = targetProjectId
  5120  	c.googlecloudidentitytoolkitv1batchdeleteaccountsrequest = googlecloudidentitytoolkitv1batchdeleteaccountsrequest
  5121  	return c
  5122  }
  5123  
  5124  // Fields allows partial responses to be retrieved. See
  5125  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5126  // details.
  5127  func (c *ProjectsAccountsBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsAccountsBatchDeleteCall {
  5128  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5129  	return c
  5130  }
  5131  
  5132  // Context sets the context to be used in this call's Do method.
  5133  func (c *ProjectsAccountsBatchDeleteCall) Context(ctx context.Context) *ProjectsAccountsBatchDeleteCall {
  5134  	c.ctx_ = ctx
  5135  	return c
  5136  }
  5137  
  5138  // Header returns a http.Header that can be modified by the caller to add
  5139  // headers to the request.
  5140  func (c *ProjectsAccountsBatchDeleteCall) Header() http.Header {
  5141  	if c.header_ == nil {
  5142  		c.header_ = make(http.Header)
  5143  	}
  5144  	return c.header_
  5145  }
  5146  
  5147  func (c *ProjectsAccountsBatchDeleteCall) doRequest(alt string) (*http.Response, error) {
  5148  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5149  	var body io.Reader = nil
  5150  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1batchdeleteaccountsrequest)
  5151  	if err != nil {
  5152  		return nil, err
  5153  	}
  5154  	c.urlParams_.Set("alt", alt)
  5155  	c.urlParams_.Set("prettyPrint", "false")
  5156  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts:batchDelete")
  5157  	urls += "?" + c.urlParams_.Encode()
  5158  	req, err := http.NewRequest("POST", urls, body)
  5159  	if err != nil {
  5160  		return nil, err
  5161  	}
  5162  	req.Header = reqHeaders
  5163  	googleapi.Expand(req.URL, map[string]string{
  5164  		"targetProjectId": c.targetProjectId,
  5165  	})
  5166  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5167  }
  5168  
  5169  // Do executes the "identitytoolkit.projects.accounts.batchDelete" call.
  5170  // Any non-2xx status code is an error. Response headers are in either
  5171  // *GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse.ServerResponse.Heade
  5172  // r or (if a response was returned at all) in error.(*googleapi.Error).Header.
  5173  // Use googleapi.IsNotModified to check whether the returned error was because
  5174  // http.StatusNotModified was returned.
  5175  func (c *ProjectsAccountsBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse, error) {
  5176  	gensupport.SetOptions(c.urlParams_, opts...)
  5177  	res, err := c.doRequest("json")
  5178  	if res != nil && res.StatusCode == http.StatusNotModified {
  5179  		if res.Body != nil {
  5180  			res.Body.Close()
  5181  		}
  5182  		return nil, gensupport.WrapError(&googleapi.Error{
  5183  			Code:   res.StatusCode,
  5184  			Header: res.Header,
  5185  		})
  5186  	}
  5187  	if err != nil {
  5188  		return nil, err
  5189  	}
  5190  	defer googleapi.CloseBody(res)
  5191  	if err := googleapi.CheckResponse(res); err != nil {
  5192  		return nil, gensupport.WrapError(err)
  5193  	}
  5194  	ret := &GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse{
  5195  		ServerResponse: googleapi.ServerResponse{
  5196  			Header:         res.Header,
  5197  			HTTPStatusCode: res.StatusCode,
  5198  		},
  5199  	}
  5200  	target := &ret
  5201  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5202  		return nil, err
  5203  	}
  5204  	return ret, nil
  5205  }
  5206  
  5207  type ProjectsAccountsBatchGetCall struct {
  5208  	s               *Service
  5209  	targetProjectId string
  5210  	urlParams_      gensupport.URLParams
  5211  	ifNoneMatch_    string
  5212  	ctx_            context.Context
  5213  	header_         http.Header
  5214  }
  5215  
  5216  // BatchGet: Download account information for all accounts on the project in a
  5217  // paginated manner. To use this method requires a Google OAuth 2.0 credential
  5218  // with proper permissions
  5219  // (https://cloud.google.com/identity-platform/docs/access-control)..
  5220  // Furthermore, additional permissions are needed to get password hash,
  5221  // password salt, and password version from accounts; otherwise these fields
  5222  // are redacted.
  5223  //
  5224  //   - targetProjectId: If `tenant_id` is specified, the ID of the Google Cloud
  5225  //     project that the Identity Platform tenant belongs to. Otherwise, the ID of
  5226  //     the Google Cloud project that the accounts belong to.
  5227  func (r *ProjectsAccountsService) BatchGet(targetProjectId string) *ProjectsAccountsBatchGetCall {
  5228  	c := &ProjectsAccountsBatchGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5229  	c.targetProjectId = targetProjectId
  5230  	return c
  5231  }
  5232  
  5233  // DelegatedProjectNumber sets the optional parameter "delegatedProjectNumber":
  5234  func (c *ProjectsAccountsBatchGetCall) DelegatedProjectNumber(delegatedProjectNumber int64) *ProjectsAccountsBatchGetCall {
  5235  	c.urlParams_.Set("delegatedProjectNumber", fmt.Sprint(delegatedProjectNumber))
  5236  	return c
  5237  }
  5238  
  5239  // MaxResults sets the optional parameter "maxResults": The maximum number of
  5240  // results to return. Must be at least 1 and no greater than 1000. By default,
  5241  // it is 20.
  5242  func (c *ProjectsAccountsBatchGetCall) MaxResults(maxResults int64) *ProjectsAccountsBatchGetCall {
  5243  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
  5244  	return c
  5245  }
  5246  
  5247  // NextPageToken sets the optional parameter "nextPageToken": The pagination
  5248  // token from the response of a previous request.
  5249  func (c *ProjectsAccountsBatchGetCall) NextPageToken(nextPageToken string) *ProjectsAccountsBatchGetCall {
  5250  	c.urlParams_.Set("nextPageToken", nextPageToken)
  5251  	return c
  5252  }
  5253  
  5254  // TenantId sets the optional parameter "tenantId": The ID of the Identity
  5255  // Platform tenant the accounts belongs to. If not specified, accounts on the
  5256  // Identity Platform project are returned.
  5257  func (c *ProjectsAccountsBatchGetCall) TenantId(tenantId string) *ProjectsAccountsBatchGetCall {
  5258  	c.urlParams_.Set("tenantId", tenantId)
  5259  	return c
  5260  }
  5261  
  5262  // Fields allows partial responses to be retrieved. See
  5263  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5264  // details.
  5265  func (c *ProjectsAccountsBatchGetCall) Fields(s ...googleapi.Field) *ProjectsAccountsBatchGetCall {
  5266  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5267  	return c
  5268  }
  5269  
  5270  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5271  // object's ETag matches the given value. This is useful for getting updates
  5272  // only after the object has changed since the last request.
  5273  func (c *ProjectsAccountsBatchGetCall) IfNoneMatch(entityTag string) *ProjectsAccountsBatchGetCall {
  5274  	c.ifNoneMatch_ = entityTag
  5275  	return c
  5276  }
  5277  
  5278  // Context sets the context to be used in this call's Do method.
  5279  func (c *ProjectsAccountsBatchGetCall) Context(ctx context.Context) *ProjectsAccountsBatchGetCall {
  5280  	c.ctx_ = ctx
  5281  	return c
  5282  }
  5283  
  5284  // Header returns a http.Header that can be modified by the caller to add
  5285  // headers to the request.
  5286  func (c *ProjectsAccountsBatchGetCall) Header() http.Header {
  5287  	if c.header_ == nil {
  5288  		c.header_ = make(http.Header)
  5289  	}
  5290  	return c.header_
  5291  }
  5292  
  5293  func (c *ProjectsAccountsBatchGetCall) doRequest(alt string) (*http.Response, error) {
  5294  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5295  	if c.ifNoneMatch_ != "" {
  5296  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5297  	}
  5298  	var body io.Reader = nil
  5299  	c.urlParams_.Set("alt", alt)
  5300  	c.urlParams_.Set("prettyPrint", "false")
  5301  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts:batchGet")
  5302  	urls += "?" + c.urlParams_.Encode()
  5303  	req, err := http.NewRequest("GET", urls, body)
  5304  	if err != nil {
  5305  		return nil, err
  5306  	}
  5307  	req.Header = reqHeaders
  5308  	googleapi.Expand(req.URL, map[string]string{
  5309  		"targetProjectId": c.targetProjectId,
  5310  	})
  5311  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5312  }
  5313  
  5314  // Do executes the "identitytoolkit.projects.accounts.batchGet" call.
  5315  // Any non-2xx status code is an error. Response headers are in either
  5316  // *GoogleCloudIdentitytoolkitV1DownloadAccountResponse.ServerResponse.Header
  5317  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  5318  // Use googleapi.IsNotModified to check whether the returned error was because
  5319  // http.StatusNotModified was returned.
  5320  func (c *ProjectsAccountsBatchGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1DownloadAccountResponse, error) {
  5321  	gensupport.SetOptions(c.urlParams_, opts...)
  5322  	res, err := c.doRequest("json")
  5323  	if res != nil && res.StatusCode == http.StatusNotModified {
  5324  		if res.Body != nil {
  5325  			res.Body.Close()
  5326  		}
  5327  		return nil, gensupport.WrapError(&googleapi.Error{
  5328  			Code:   res.StatusCode,
  5329  			Header: res.Header,
  5330  		})
  5331  	}
  5332  	if err != nil {
  5333  		return nil, err
  5334  	}
  5335  	defer googleapi.CloseBody(res)
  5336  	if err := googleapi.CheckResponse(res); err != nil {
  5337  		return nil, gensupport.WrapError(err)
  5338  	}
  5339  	ret := &GoogleCloudIdentitytoolkitV1DownloadAccountResponse{
  5340  		ServerResponse: googleapi.ServerResponse{
  5341  			Header:         res.Header,
  5342  			HTTPStatusCode: res.StatusCode,
  5343  		},
  5344  	}
  5345  	target := &ret
  5346  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5347  		return nil, err
  5348  	}
  5349  	return ret, nil
  5350  }
  5351  
  5352  // Pages invokes f for each page of results.
  5353  // A non-nil error returned from f will halt the iteration.
  5354  // The provided context supersedes any context provided to the Context method.
  5355  func (c *ProjectsAccountsBatchGetCall) Pages(ctx context.Context, f func(*GoogleCloudIdentitytoolkitV1DownloadAccountResponse) error) error {
  5356  	c.ctx_ = ctx
  5357  	defer c.NextPageToken(c.urlParams_.Get("nextPageToken"))
  5358  	for {
  5359  		x, err := c.Do()
  5360  		if err != nil {
  5361  			return err
  5362  		}
  5363  		if err := f(x); err != nil {
  5364  			return err
  5365  		}
  5366  		if x.NextPageToken == "" {
  5367  			return nil
  5368  		}
  5369  		c.NextPageToken(x.NextPageToken)
  5370  	}
  5371  }
  5372  
  5373  type ProjectsAccountsDeleteCall struct {
  5374  	s                                                *Service
  5375  	targetProjectId                                  string
  5376  	googlecloudidentitytoolkitv1deleteaccountrequest *GoogleCloudIdentitytoolkitV1DeleteAccountRequest
  5377  	urlParams_                                       gensupport.URLParams
  5378  	ctx_                                             context.Context
  5379  	header_                                          http.Header
  5380  }
  5381  
  5382  // Delete: Deletes a user's account.
  5383  //
  5384  //   - targetProjectId: The ID of the project which the account belongs to.
  5385  //     Should only be specified in authenticated requests that specify local_id
  5386  //     of an account.
  5387  func (r *ProjectsAccountsService) Delete(targetProjectId string, googlecloudidentitytoolkitv1deleteaccountrequest *GoogleCloudIdentitytoolkitV1DeleteAccountRequest) *ProjectsAccountsDeleteCall {
  5388  	c := &ProjectsAccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5389  	c.targetProjectId = targetProjectId
  5390  	c.googlecloudidentitytoolkitv1deleteaccountrequest = googlecloudidentitytoolkitv1deleteaccountrequest
  5391  	return c
  5392  }
  5393  
  5394  // Fields allows partial responses to be retrieved. See
  5395  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5396  // details.
  5397  func (c *ProjectsAccountsDeleteCall) Fields(s ...googleapi.Field) *ProjectsAccountsDeleteCall {
  5398  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5399  	return c
  5400  }
  5401  
  5402  // Context sets the context to be used in this call's Do method.
  5403  func (c *ProjectsAccountsDeleteCall) Context(ctx context.Context) *ProjectsAccountsDeleteCall {
  5404  	c.ctx_ = ctx
  5405  	return c
  5406  }
  5407  
  5408  // Header returns a http.Header that can be modified by the caller to add
  5409  // headers to the request.
  5410  func (c *ProjectsAccountsDeleteCall) Header() http.Header {
  5411  	if c.header_ == nil {
  5412  		c.header_ = make(http.Header)
  5413  	}
  5414  	return c.header_
  5415  }
  5416  
  5417  func (c *ProjectsAccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
  5418  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5419  	var body io.Reader = nil
  5420  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1deleteaccountrequest)
  5421  	if err != nil {
  5422  		return nil, err
  5423  	}
  5424  	c.urlParams_.Set("alt", alt)
  5425  	c.urlParams_.Set("prettyPrint", "false")
  5426  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts:delete")
  5427  	urls += "?" + c.urlParams_.Encode()
  5428  	req, err := http.NewRequest("POST", urls, body)
  5429  	if err != nil {
  5430  		return nil, err
  5431  	}
  5432  	req.Header = reqHeaders
  5433  	googleapi.Expand(req.URL, map[string]string{
  5434  		"targetProjectId": c.targetProjectId,
  5435  	})
  5436  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5437  }
  5438  
  5439  // Do executes the "identitytoolkit.projects.accounts.delete" call.
  5440  // Any non-2xx status code is an error. Response headers are in either
  5441  // *GoogleCloudIdentitytoolkitV1DeleteAccountResponse.ServerResponse.Header or
  5442  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5443  // googleapi.IsNotModified to check whether the returned error was because
  5444  // http.StatusNotModified was returned.
  5445  func (c *ProjectsAccountsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1DeleteAccountResponse, error) {
  5446  	gensupport.SetOptions(c.urlParams_, opts...)
  5447  	res, err := c.doRequest("json")
  5448  	if res != nil && res.StatusCode == http.StatusNotModified {
  5449  		if res.Body != nil {
  5450  			res.Body.Close()
  5451  		}
  5452  		return nil, gensupport.WrapError(&googleapi.Error{
  5453  			Code:   res.StatusCode,
  5454  			Header: res.Header,
  5455  		})
  5456  	}
  5457  	if err != nil {
  5458  		return nil, err
  5459  	}
  5460  	defer googleapi.CloseBody(res)
  5461  	if err := googleapi.CheckResponse(res); err != nil {
  5462  		return nil, gensupport.WrapError(err)
  5463  	}
  5464  	ret := &GoogleCloudIdentitytoolkitV1DeleteAccountResponse{
  5465  		ServerResponse: googleapi.ServerResponse{
  5466  			Header:         res.Header,
  5467  			HTTPStatusCode: res.StatusCode,
  5468  		},
  5469  	}
  5470  	target := &ret
  5471  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5472  		return nil, err
  5473  	}
  5474  	return ret, nil
  5475  }
  5476  
  5477  type ProjectsAccountsLookupCall struct {
  5478  	s                                                 *Service
  5479  	targetProjectId                                   string
  5480  	googlecloudidentitytoolkitv1getaccountinforequest *GoogleCloudIdentitytoolkitV1GetAccountInfoRequest
  5481  	urlParams_                                        gensupport.URLParams
  5482  	ctx_                                              context.Context
  5483  	header_                                           http.Header
  5484  }
  5485  
  5486  // Lookup: Gets account information for all matched accounts. For an end user
  5487  // request, retrieves the account of the end user. For an admin request with
  5488  // Google OAuth 2.0 credential, retrieves one or multiple account(s) with
  5489  // matching criteria.
  5490  //
  5491  //   - targetProjectId: The ID of the Google Cloud project that the account or
  5492  //     the Identity Platform tenant specified by `tenant_id` belongs to. Should
  5493  //     only be specified by authenticated requests bearing a Google OAuth 2.0
  5494  //     credential with proper permissions
  5495  //     (https://cloud.google.com/identity-platform/docs/access-control).
  5496  func (r *ProjectsAccountsService) Lookup(targetProjectId string, googlecloudidentitytoolkitv1getaccountinforequest *GoogleCloudIdentitytoolkitV1GetAccountInfoRequest) *ProjectsAccountsLookupCall {
  5497  	c := &ProjectsAccountsLookupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5498  	c.targetProjectId = targetProjectId
  5499  	c.googlecloudidentitytoolkitv1getaccountinforequest = googlecloudidentitytoolkitv1getaccountinforequest
  5500  	return c
  5501  }
  5502  
  5503  // Fields allows partial responses to be retrieved. See
  5504  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5505  // details.
  5506  func (c *ProjectsAccountsLookupCall) Fields(s ...googleapi.Field) *ProjectsAccountsLookupCall {
  5507  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5508  	return c
  5509  }
  5510  
  5511  // Context sets the context to be used in this call's Do method.
  5512  func (c *ProjectsAccountsLookupCall) Context(ctx context.Context) *ProjectsAccountsLookupCall {
  5513  	c.ctx_ = ctx
  5514  	return c
  5515  }
  5516  
  5517  // Header returns a http.Header that can be modified by the caller to add
  5518  // headers to the request.
  5519  func (c *ProjectsAccountsLookupCall) Header() http.Header {
  5520  	if c.header_ == nil {
  5521  		c.header_ = make(http.Header)
  5522  	}
  5523  	return c.header_
  5524  }
  5525  
  5526  func (c *ProjectsAccountsLookupCall) doRequest(alt string) (*http.Response, error) {
  5527  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5528  	var body io.Reader = nil
  5529  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1getaccountinforequest)
  5530  	if err != nil {
  5531  		return nil, err
  5532  	}
  5533  	c.urlParams_.Set("alt", alt)
  5534  	c.urlParams_.Set("prettyPrint", "false")
  5535  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts:lookup")
  5536  	urls += "?" + c.urlParams_.Encode()
  5537  	req, err := http.NewRequest("POST", urls, body)
  5538  	if err != nil {
  5539  		return nil, err
  5540  	}
  5541  	req.Header = reqHeaders
  5542  	googleapi.Expand(req.URL, map[string]string{
  5543  		"targetProjectId": c.targetProjectId,
  5544  	})
  5545  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5546  }
  5547  
  5548  // Do executes the "identitytoolkit.projects.accounts.lookup" call.
  5549  // Any non-2xx status code is an error. Response headers are in either
  5550  // *GoogleCloudIdentitytoolkitV1GetAccountInfoResponse.ServerResponse.Header or
  5551  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5552  // googleapi.IsNotModified to check whether the returned error was because
  5553  // http.StatusNotModified was returned.
  5554  func (c *ProjectsAccountsLookupCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetAccountInfoResponse, error) {
  5555  	gensupport.SetOptions(c.urlParams_, opts...)
  5556  	res, err := c.doRequest("json")
  5557  	if res != nil && res.StatusCode == http.StatusNotModified {
  5558  		if res.Body != nil {
  5559  			res.Body.Close()
  5560  		}
  5561  		return nil, gensupport.WrapError(&googleapi.Error{
  5562  			Code:   res.StatusCode,
  5563  			Header: res.Header,
  5564  		})
  5565  	}
  5566  	if err != nil {
  5567  		return nil, err
  5568  	}
  5569  	defer googleapi.CloseBody(res)
  5570  	if err := googleapi.CheckResponse(res); err != nil {
  5571  		return nil, gensupport.WrapError(err)
  5572  	}
  5573  	ret := &GoogleCloudIdentitytoolkitV1GetAccountInfoResponse{
  5574  		ServerResponse: googleapi.ServerResponse{
  5575  			Header:         res.Header,
  5576  			HTTPStatusCode: res.StatusCode,
  5577  		},
  5578  	}
  5579  	target := &ret
  5580  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5581  		return nil, err
  5582  	}
  5583  	return ret, nil
  5584  }
  5585  
  5586  type ProjectsAccountsQueryCall struct {
  5587  	s                                                *Service
  5588  	targetProjectId                                  string
  5589  	googlecloudidentitytoolkitv1queryuserinforequest *GoogleCloudIdentitytoolkitV1QueryUserInfoRequest
  5590  	urlParams_                                       gensupport.URLParams
  5591  	ctx_                                             context.Context
  5592  	header_                                          http.Header
  5593  }
  5594  
  5595  // Query: Looks up user accounts within a project or a tenant based on
  5596  // conditions in the request.
  5597  //
  5598  // - targetProjectId: The ID of the project to which the result is scoped.
  5599  func (r *ProjectsAccountsService) Query(targetProjectId string, googlecloudidentitytoolkitv1queryuserinforequest *GoogleCloudIdentitytoolkitV1QueryUserInfoRequest) *ProjectsAccountsQueryCall {
  5600  	c := &ProjectsAccountsQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5601  	c.targetProjectId = targetProjectId
  5602  	c.googlecloudidentitytoolkitv1queryuserinforequest = googlecloudidentitytoolkitv1queryuserinforequest
  5603  	return c
  5604  }
  5605  
  5606  // Fields allows partial responses to be retrieved. See
  5607  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5608  // details.
  5609  func (c *ProjectsAccountsQueryCall) Fields(s ...googleapi.Field) *ProjectsAccountsQueryCall {
  5610  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5611  	return c
  5612  }
  5613  
  5614  // Context sets the context to be used in this call's Do method.
  5615  func (c *ProjectsAccountsQueryCall) Context(ctx context.Context) *ProjectsAccountsQueryCall {
  5616  	c.ctx_ = ctx
  5617  	return c
  5618  }
  5619  
  5620  // Header returns a http.Header that can be modified by the caller to add
  5621  // headers to the request.
  5622  func (c *ProjectsAccountsQueryCall) Header() http.Header {
  5623  	if c.header_ == nil {
  5624  		c.header_ = make(http.Header)
  5625  	}
  5626  	return c.header_
  5627  }
  5628  
  5629  func (c *ProjectsAccountsQueryCall) doRequest(alt string) (*http.Response, error) {
  5630  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5631  	var body io.Reader = nil
  5632  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1queryuserinforequest)
  5633  	if err != nil {
  5634  		return nil, err
  5635  	}
  5636  	c.urlParams_.Set("alt", alt)
  5637  	c.urlParams_.Set("prettyPrint", "false")
  5638  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts:query")
  5639  	urls += "?" + c.urlParams_.Encode()
  5640  	req, err := http.NewRequest("POST", urls, body)
  5641  	if err != nil {
  5642  		return nil, err
  5643  	}
  5644  	req.Header = reqHeaders
  5645  	googleapi.Expand(req.URL, map[string]string{
  5646  		"targetProjectId": c.targetProjectId,
  5647  	})
  5648  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5649  }
  5650  
  5651  // Do executes the "identitytoolkit.projects.accounts.query" call.
  5652  // Any non-2xx status code is an error. Response headers are in either
  5653  // *GoogleCloudIdentitytoolkitV1QueryUserInfoResponse.ServerResponse.Header or
  5654  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5655  // googleapi.IsNotModified to check whether the returned error was because
  5656  // http.StatusNotModified was returned.
  5657  func (c *ProjectsAccountsQueryCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1QueryUserInfoResponse, error) {
  5658  	gensupport.SetOptions(c.urlParams_, opts...)
  5659  	res, err := c.doRequest("json")
  5660  	if res != nil && res.StatusCode == http.StatusNotModified {
  5661  		if res.Body != nil {
  5662  			res.Body.Close()
  5663  		}
  5664  		return nil, gensupport.WrapError(&googleapi.Error{
  5665  			Code:   res.StatusCode,
  5666  			Header: res.Header,
  5667  		})
  5668  	}
  5669  	if err != nil {
  5670  		return nil, err
  5671  	}
  5672  	defer googleapi.CloseBody(res)
  5673  	if err := googleapi.CheckResponse(res); err != nil {
  5674  		return nil, gensupport.WrapError(err)
  5675  	}
  5676  	ret := &GoogleCloudIdentitytoolkitV1QueryUserInfoResponse{
  5677  		ServerResponse: googleapi.ServerResponse{
  5678  			Header:         res.Header,
  5679  			HTTPStatusCode: res.StatusCode,
  5680  		},
  5681  	}
  5682  	target := &ret
  5683  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5684  		return nil, err
  5685  	}
  5686  	return ret, nil
  5687  }
  5688  
  5689  type ProjectsAccountsSendOobCodeCall struct {
  5690  	s                                             *Service
  5691  	targetProjectId                               string
  5692  	googlecloudidentitytoolkitv1getoobcoderequest *GoogleCloudIdentitytoolkitV1GetOobCodeRequest
  5693  	urlParams_                                    gensupport.URLParams
  5694  	ctx_                                          context.Context
  5695  	header_                                       http.Header
  5696  }
  5697  
  5698  // SendOobCode: Sends an out-of-band confirmation code for an account. Requests
  5699  // from a authenticated request can optionally return a link including the OOB
  5700  // code instead of sending it.
  5701  //
  5702  //   - targetProjectId: The Project ID of the Identity Platform project which the
  5703  //     account belongs to. To specify this field, it requires a Google OAuth 2.0
  5704  //     credential with proper permissions
  5705  //     (https://cloud.google.com/identity-platform/docs/access-control).
  5706  func (r *ProjectsAccountsService) SendOobCode(targetProjectId string, googlecloudidentitytoolkitv1getoobcoderequest *GoogleCloudIdentitytoolkitV1GetOobCodeRequest) *ProjectsAccountsSendOobCodeCall {
  5707  	c := &ProjectsAccountsSendOobCodeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5708  	c.targetProjectId = targetProjectId
  5709  	c.googlecloudidentitytoolkitv1getoobcoderequest = googlecloudidentitytoolkitv1getoobcoderequest
  5710  	return c
  5711  }
  5712  
  5713  // Fields allows partial responses to be retrieved. See
  5714  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5715  // details.
  5716  func (c *ProjectsAccountsSendOobCodeCall) Fields(s ...googleapi.Field) *ProjectsAccountsSendOobCodeCall {
  5717  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5718  	return c
  5719  }
  5720  
  5721  // Context sets the context to be used in this call's Do method.
  5722  func (c *ProjectsAccountsSendOobCodeCall) Context(ctx context.Context) *ProjectsAccountsSendOobCodeCall {
  5723  	c.ctx_ = ctx
  5724  	return c
  5725  }
  5726  
  5727  // Header returns a http.Header that can be modified by the caller to add
  5728  // headers to the request.
  5729  func (c *ProjectsAccountsSendOobCodeCall) Header() http.Header {
  5730  	if c.header_ == nil {
  5731  		c.header_ = make(http.Header)
  5732  	}
  5733  	return c.header_
  5734  }
  5735  
  5736  func (c *ProjectsAccountsSendOobCodeCall) doRequest(alt string) (*http.Response, error) {
  5737  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5738  	var body io.Reader = nil
  5739  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1getoobcoderequest)
  5740  	if err != nil {
  5741  		return nil, err
  5742  	}
  5743  	c.urlParams_.Set("alt", alt)
  5744  	c.urlParams_.Set("prettyPrint", "false")
  5745  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts:sendOobCode")
  5746  	urls += "?" + c.urlParams_.Encode()
  5747  	req, err := http.NewRequest("POST", urls, body)
  5748  	if err != nil {
  5749  		return nil, err
  5750  	}
  5751  	req.Header = reqHeaders
  5752  	googleapi.Expand(req.URL, map[string]string{
  5753  		"targetProjectId": c.targetProjectId,
  5754  	})
  5755  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5756  }
  5757  
  5758  // Do executes the "identitytoolkit.projects.accounts.sendOobCode" call.
  5759  // Any non-2xx status code is an error. Response headers are in either
  5760  // *GoogleCloudIdentitytoolkitV1GetOobCodeResponse.ServerResponse.Header or (if
  5761  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  5762  // googleapi.IsNotModified to check whether the returned error was because
  5763  // http.StatusNotModified was returned.
  5764  func (c *ProjectsAccountsSendOobCodeCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetOobCodeResponse, error) {
  5765  	gensupport.SetOptions(c.urlParams_, opts...)
  5766  	res, err := c.doRequest("json")
  5767  	if res != nil && res.StatusCode == http.StatusNotModified {
  5768  		if res.Body != nil {
  5769  			res.Body.Close()
  5770  		}
  5771  		return nil, gensupport.WrapError(&googleapi.Error{
  5772  			Code:   res.StatusCode,
  5773  			Header: res.Header,
  5774  		})
  5775  	}
  5776  	if err != nil {
  5777  		return nil, err
  5778  	}
  5779  	defer googleapi.CloseBody(res)
  5780  	if err := googleapi.CheckResponse(res); err != nil {
  5781  		return nil, gensupport.WrapError(err)
  5782  	}
  5783  	ret := &GoogleCloudIdentitytoolkitV1GetOobCodeResponse{
  5784  		ServerResponse: googleapi.ServerResponse{
  5785  			Header:         res.Header,
  5786  			HTTPStatusCode: res.StatusCode,
  5787  		},
  5788  	}
  5789  	target := &ret
  5790  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5791  		return nil, err
  5792  	}
  5793  	return ret, nil
  5794  }
  5795  
  5796  type ProjectsAccountsUpdateCall struct {
  5797  	s                                                 *Service
  5798  	targetProjectId                                   string
  5799  	googlecloudidentitytoolkitv1setaccountinforequest *GoogleCloudIdentitytoolkitV1SetAccountInfoRequest
  5800  	urlParams_                                        gensupport.URLParams
  5801  	ctx_                                              context.Context
  5802  	header_                                           http.Header
  5803  }
  5804  
  5805  // Update: Updates account-related information for the specified user by
  5806  // setting specific fields or applying action codes. Requests from
  5807  // administrators and end users are supported.
  5808  //
  5809  //   - targetProjectId: The project ID for the project that the account belongs
  5810  //     to. Specifying this field requires Google OAuth 2.0 credential with proper
  5811  //     [permissions]
  5812  //     (https://cloud.google.com/identity-platform/docs/access-control). Requests
  5813  //     from end users should pass an Identity Platform ID token instead.
  5814  func (r *ProjectsAccountsService) Update(targetProjectId string, googlecloudidentitytoolkitv1setaccountinforequest *GoogleCloudIdentitytoolkitV1SetAccountInfoRequest) *ProjectsAccountsUpdateCall {
  5815  	c := &ProjectsAccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5816  	c.targetProjectId = targetProjectId
  5817  	c.googlecloudidentitytoolkitv1setaccountinforequest = googlecloudidentitytoolkitv1setaccountinforequest
  5818  	return c
  5819  }
  5820  
  5821  // Fields allows partial responses to be retrieved. See
  5822  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5823  // details.
  5824  func (c *ProjectsAccountsUpdateCall) Fields(s ...googleapi.Field) *ProjectsAccountsUpdateCall {
  5825  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5826  	return c
  5827  }
  5828  
  5829  // Context sets the context to be used in this call's Do method.
  5830  func (c *ProjectsAccountsUpdateCall) Context(ctx context.Context) *ProjectsAccountsUpdateCall {
  5831  	c.ctx_ = ctx
  5832  	return c
  5833  }
  5834  
  5835  // Header returns a http.Header that can be modified by the caller to add
  5836  // headers to the request.
  5837  func (c *ProjectsAccountsUpdateCall) Header() http.Header {
  5838  	if c.header_ == nil {
  5839  		c.header_ = make(http.Header)
  5840  	}
  5841  	return c.header_
  5842  }
  5843  
  5844  func (c *ProjectsAccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
  5845  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5846  	var body io.Reader = nil
  5847  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1setaccountinforequest)
  5848  	if err != nil {
  5849  		return nil, err
  5850  	}
  5851  	c.urlParams_.Set("alt", alt)
  5852  	c.urlParams_.Set("prettyPrint", "false")
  5853  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/accounts:update")
  5854  	urls += "?" + c.urlParams_.Encode()
  5855  	req, err := http.NewRequest("POST", urls, body)
  5856  	if err != nil {
  5857  		return nil, err
  5858  	}
  5859  	req.Header = reqHeaders
  5860  	googleapi.Expand(req.URL, map[string]string{
  5861  		"targetProjectId": c.targetProjectId,
  5862  	})
  5863  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5864  }
  5865  
  5866  // Do executes the "identitytoolkit.projects.accounts.update" call.
  5867  // Any non-2xx status code is an error. Response headers are in either
  5868  // *GoogleCloudIdentitytoolkitV1SetAccountInfoResponse.ServerResponse.Header or
  5869  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5870  // googleapi.IsNotModified to check whether the returned error was because
  5871  // http.StatusNotModified was returned.
  5872  func (c *ProjectsAccountsUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SetAccountInfoResponse, error) {
  5873  	gensupport.SetOptions(c.urlParams_, opts...)
  5874  	res, err := c.doRequest("json")
  5875  	if res != nil && res.StatusCode == http.StatusNotModified {
  5876  		if res.Body != nil {
  5877  			res.Body.Close()
  5878  		}
  5879  		return nil, gensupport.WrapError(&googleapi.Error{
  5880  			Code:   res.StatusCode,
  5881  			Header: res.Header,
  5882  		})
  5883  	}
  5884  	if err != nil {
  5885  		return nil, err
  5886  	}
  5887  	defer googleapi.CloseBody(res)
  5888  	if err := googleapi.CheckResponse(res); err != nil {
  5889  		return nil, gensupport.WrapError(err)
  5890  	}
  5891  	ret := &GoogleCloudIdentitytoolkitV1SetAccountInfoResponse{
  5892  		ServerResponse: googleapi.ServerResponse{
  5893  			Header:         res.Header,
  5894  			HTTPStatusCode: res.StatusCode,
  5895  		},
  5896  	}
  5897  	target := &ret
  5898  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5899  		return nil, err
  5900  	}
  5901  	return ret, nil
  5902  }
  5903  
  5904  type ProjectsTenantsAccountsCall struct {
  5905  	s                                         *Service
  5906  	targetProjectId                           string
  5907  	tenantId                                  string
  5908  	googlecloudidentitytoolkitv1signuprequest *GoogleCloudIdentitytoolkitV1SignUpRequest
  5909  	urlParams_                                gensupport.URLParams
  5910  	ctx_                                      context.Context
  5911  	header_                                   http.Header
  5912  }
  5913  
  5914  // Accounts: Signs up a new email and password user or anonymous user, or
  5915  // upgrades an anonymous user to email and password. For an admin request with
  5916  // a Google OAuth 2.0 credential with the proper permissions
  5917  // (https://cloud.google.com/identity-platform/docs/access-control), creates a
  5918  // new anonymous, email and password, or phone number user. An API key
  5919  // (https://cloud.google.com/docs/authentication/api-keys) is required in the
  5920  // request in order to identify the Google Cloud project.
  5921  //
  5922  //   - targetProjectId: The project ID of the project which the user should
  5923  //     belong to. Specifying this field requires a Google OAuth 2.0 credential
  5924  //     with the proper permissions
  5925  //     (https://cloud.google.com/identity-platform/docs/access-control). If this
  5926  //     is not set, the target project is inferred from the scope associated to
  5927  //     the Bearer access token.
  5928  //   - tenantId: The ID of the Identity Platform tenant to create a user under.
  5929  //     If not set, the user will be created under the default Identity Platform
  5930  //     project.
  5931  func (r *ProjectsTenantsService) Accounts(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1signuprequest *GoogleCloudIdentitytoolkitV1SignUpRequest) *ProjectsTenantsAccountsCall {
  5932  	c := &ProjectsTenantsAccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5933  	c.targetProjectId = targetProjectId
  5934  	c.tenantId = tenantId
  5935  	c.googlecloudidentitytoolkitv1signuprequest = googlecloudidentitytoolkitv1signuprequest
  5936  	return c
  5937  }
  5938  
  5939  // Fields allows partial responses to be retrieved. See
  5940  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5941  // details.
  5942  func (c *ProjectsTenantsAccountsCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsCall {
  5943  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5944  	return c
  5945  }
  5946  
  5947  // Context sets the context to be used in this call's Do method.
  5948  func (c *ProjectsTenantsAccountsCall) Context(ctx context.Context) *ProjectsTenantsAccountsCall {
  5949  	c.ctx_ = ctx
  5950  	return c
  5951  }
  5952  
  5953  // Header returns a http.Header that can be modified by the caller to add
  5954  // headers to the request.
  5955  func (c *ProjectsTenantsAccountsCall) Header() http.Header {
  5956  	if c.header_ == nil {
  5957  		c.header_ = make(http.Header)
  5958  	}
  5959  	return c.header_
  5960  }
  5961  
  5962  func (c *ProjectsTenantsAccountsCall) doRequest(alt string) (*http.Response, error) {
  5963  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5964  	var body io.Reader = nil
  5965  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1signuprequest)
  5966  	if err != nil {
  5967  		return nil, err
  5968  	}
  5969  	c.urlParams_.Set("alt", alt)
  5970  	c.urlParams_.Set("prettyPrint", "false")
  5971  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts")
  5972  	urls += "?" + c.urlParams_.Encode()
  5973  	req, err := http.NewRequest("POST", urls, body)
  5974  	if err != nil {
  5975  		return nil, err
  5976  	}
  5977  	req.Header = reqHeaders
  5978  	googleapi.Expand(req.URL, map[string]string{
  5979  		"targetProjectId": c.targetProjectId,
  5980  		"tenantId":        c.tenantId,
  5981  	})
  5982  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5983  }
  5984  
  5985  // Do executes the "identitytoolkit.projects.tenants.accounts" call.
  5986  // Any non-2xx status code is an error. Response headers are in either
  5987  // *GoogleCloudIdentitytoolkitV1SignUpResponse.ServerResponse.Header or (if a
  5988  // response was returned at all) in error.(*googleapi.Error).Header. Use
  5989  // googleapi.IsNotModified to check whether the returned error was because
  5990  // http.StatusNotModified was returned.
  5991  func (c *ProjectsTenantsAccountsCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SignUpResponse, error) {
  5992  	gensupport.SetOptions(c.urlParams_, opts...)
  5993  	res, err := c.doRequest("json")
  5994  	if res != nil && res.StatusCode == http.StatusNotModified {
  5995  		if res.Body != nil {
  5996  			res.Body.Close()
  5997  		}
  5998  		return nil, gensupport.WrapError(&googleapi.Error{
  5999  			Code:   res.StatusCode,
  6000  			Header: res.Header,
  6001  		})
  6002  	}
  6003  	if err != nil {
  6004  		return nil, err
  6005  	}
  6006  	defer googleapi.CloseBody(res)
  6007  	if err := googleapi.CheckResponse(res); err != nil {
  6008  		return nil, gensupport.WrapError(err)
  6009  	}
  6010  	ret := &GoogleCloudIdentitytoolkitV1SignUpResponse{
  6011  		ServerResponse: googleapi.ServerResponse{
  6012  			Header:         res.Header,
  6013  			HTTPStatusCode: res.StatusCode,
  6014  		},
  6015  	}
  6016  	target := &ret
  6017  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6018  		return nil, err
  6019  	}
  6020  	return ret, nil
  6021  }
  6022  
  6023  type ProjectsTenantsCreateSessionCookieCall struct {
  6024  	s                                                      *Service
  6025  	targetProjectId                                        string
  6026  	tenantId                                               string
  6027  	googlecloudidentitytoolkitv1createsessioncookierequest *GoogleCloudIdentitytoolkitV1CreateSessionCookieRequest
  6028  	urlParams_                                             gensupport.URLParams
  6029  	ctx_                                                   context.Context
  6030  	header_                                                http.Header
  6031  }
  6032  
  6033  // CreateSessionCookie: Creates a session cookie for the given Identity
  6034  // Platform ID token. The session cookie is used by the client to preserve the
  6035  // user's login state.
  6036  //
  6037  //   - targetProjectId: The ID of the project that the account belongs to.
  6038  //   - tenantId: The tenant ID of the Identity Platform tenant the account
  6039  //     belongs to.
  6040  func (r *ProjectsTenantsService) CreateSessionCookie(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1createsessioncookierequest *GoogleCloudIdentitytoolkitV1CreateSessionCookieRequest) *ProjectsTenantsCreateSessionCookieCall {
  6041  	c := &ProjectsTenantsCreateSessionCookieCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6042  	c.targetProjectId = targetProjectId
  6043  	c.tenantId = tenantId
  6044  	c.googlecloudidentitytoolkitv1createsessioncookierequest = googlecloudidentitytoolkitv1createsessioncookierequest
  6045  	return c
  6046  }
  6047  
  6048  // Fields allows partial responses to be retrieved. See
  6049  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6050  // details.
  6051  func (c *ProjectsTenantsCreateSessionCookieCall) Fields(s ...googleapi.Field) *ProjectsTenantsCreateSessionCookieCall {
  6052  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6053  	return c
  6054  }
  6055  
  6056  // Context sets the context to be used in this call's Do method.
  6057  func (c *ProjectsTenantsCreateSessionCookieCall) Context(ctx context.Context) *ProjectsTenantsCreateSessionCookieCall {
  6058  	c.ctx_ = ctx
  6059  	return c
  6060  }
  6061  
  6062  // Header returns a http.Header that can be modified by the caller to add
  6063  // headers to the request.
  6064  func (c *ProjectsTenantsCreateSessionCookieCall) Header() http.Header {
  6065  	if c.header_ == nil {
  6066  		c.header_ = make(http.Header)
  6067  	}
  6068  	return c.header_
  6069  }
  6070  
  6071  func (c *ProjectsTenantsCreateSessionCookieCall) doRequest(alt string) (*http.Response, error) {
  6072  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6073  	var body io.Reader = nil
  6074  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1createsessioncookierequest)
  6075  	if err != nil {
  6076  		return nil, err
  6077  	}
  6078  	c.urlParams_.Set("alt", alt)
  6079  	c.urlParams_.Set("prettyPrint", "false")
  6080  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}:createSessionCookie")
  6081  	urls += "?" + c.urlParams_.Encode()
  6082  	req, err := http.NewRequest("POST", urls, body)
  6083  	if err != nil {
  6084  		return nil, err
  6085  	}
  6086  	req.Header = reqHeaders
  6087  	googleapi.Expand(req.URL, map[string]string{
  6088  		"targetProjectId": c.targetProjectId,
  6089  		"tenantId":        c.tenantId,
  6090  	})
  6091  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6092  }
  6093  
  6094  // Do executes the "identitytoolkit.projects.tenants.createSessionCookie" call.
  6095  // Any non-2xx status code is an error. Response headers are in either
  6096  // *GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse.ServerResponse.Heade
  6097  // r or (if a response was returned at all) in error.(*googleapi.Error).Header.
  6098  // Use googleapi.IsNotModified to check whether the returned error was because
  6099  // http.StatusNotModified was returned.
  6100  func (c *ProjectsTenantsCreateSessionCookieCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse, error) {
  6101  	gensupport.SetOptions(c.urlParams_, opts...)
  6102  	res, err := c.doRequest("json")
  6103  	if res != nil && res.StatusCode == http.StatusNotModified {
  6104  		if res.Body != nil {
  6105  			res.Body.Close()
  6106  		}
  6107  		return nil, gensupport.WrapError(&googleapi.Error{
  6108  			Code:   res.StatusCode,
  6109  			Header: res.Header,
  6110  		})
  6111  	}
  6112  	if err != nil {
  6113  		return nil, err
  6114  	}
  6115  	defer googleapi.CloseBody(res)
  6116  	if err := googleapi.CheckResponse(res); err != nil {
  6117  		return nil, gensupport.WrapError(err)
  6118  	}
  6119  	ret := &GoogleCloudIdentitytoolkitV1CreateSessionCookieResponse{
  6120  		ServerResponse: googleapi.ServerResponse{
  6121  			Header:         res.Header,
  6122  			HTTPStatusCode: res.StatusCode,
  6123  		},
  6124  	}
  6125  	target := &ret
  6126  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6127  		return nil, err
  6128  	}
  6129  	return ret, nil
  6130  }
  6131  
  6132  type ProjectsTenantsAccountsBatchCreateCall struct {
  6133  	s                                                *Service
  6134  	targetProjectId                                  string
  6135  	tenantId                                         string
  6136  	googlecloudidentitytoolkitv1uploadaccountrequest *GoogleCloudIdentitytoolkitV1UploadAccountRequest
  6137  	urlParams_                                       gensupport.URLParams
  6138  	ctx_                                             context.Context
  6139  	header_                                          http.Header
  6140  }
  6141  
  6142  // BatchCreate: Uploads multiple accounts into the Google Cloud project. If
  6143  // there is a problem uploading one or more of the accounts, the rest will be
  6144  // uploaded, and a list of the errors will be returned. To use this method
  6145  // requires a Google OAuth 2.0 credential with proper permissions
  6146  // (https://cloud.google.com/identity-platform/docs/access-control).
  6147  //
  6148  //   - targetProjectId: The Project ID of the Identity Platform project which the
  6149  //     account belongs to.
  6150  //   - tenantId: The ID of the Identity Platform tenant the account belongs to.
  6151  func (r *ProjectsTenantsAccountsService) BatchCreate(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1uploadaccountrequest *GoogleCloudIdentitytoolkitV1UploadAccountRequest) *ProjectsTenantsAccountsBatchCreateCall {
  6152  	c := &ProjectsTenantsAccountsBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6153  	c.targetProjectId = targetProjectId
  6154  	c.tenantId = tenantId
  6155  	c.googlecloudidentitytoolkitv1uploadaccountrequest = googlecloudidentitytoolkitv1uploadaccountrequest
  6156  	return c
  6157  }
  6158  
  6159  // Fields allows partial responses to be retrieved. See
  6160  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6161  // details.
  6162  func (c *ProjectsTenantsAccountsBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsBatchCreateCall {
  6163  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6164  	return c
  6165  }
  6166  
  6167  // Context sets the context to be used in this call's Do method.
  6168  func (c *ProjectsTenantsAccountsBatchCreateCall) Context(ctx context.Context) *ProjectsTenantsAccountsBatchCreateCall {
  6169  	c.ctx_ = ctx
  6170  	return c
  6171  }
  6172  
  6173  // Header returns a http.Header that can be modified by the caller to add
  6174  // headers to the request.
  6175  func (c *ProjectsTenantsAccountsBatchCreateCall) Header() http.Header {
  6176  	if c.header_ == nil {
  6177  		c.header_ = make(http.Header)
  6178  	}
  6179  	return c.header_
  6180  }
  6181  
  6182  func (c *ProjectsTenantsAccountsBatchCreateCall) doRequest(alt string) (*http.Response, error) {
  6183  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6184  	var body io.Reader = nil
  6185  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1uploadaccountrequest)
  6186  	if err != nil {
  6187  		return nil, err
  6188  	}
  6189  	c.urlParams_.Set("alt", alt)
  6190  	c.urlParams_.Set("prettyPrint", "false")
  6191  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts:batchCreate")
  6192  	urls += "?" + c.urlParams_.Encode()
  6193  	req, err := http.NewRequest("POST", urls, body)
  6194  	if err != nil {
  6195  		return nil, err
  6196  	}
  6197  	req.Header = reqHeaders
  6198  	googleapi.Expand(req.URL, map[string]string{
  6199  		"targetProjectId": c.targetProjectId,
  6200  		"tenantId":        c.tenantId,
  6201  	})
  6202  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6203  }
  6204  
  6205  // Do executes the "identitytoolkit.projects.tenants.accounts.batchCreate" call.
  6206  // Any non-2xx status code is an error. Response headers are in either
  6207  // *GoogleCloudIdentitytoolkitV1UploadAccountResponse.ServerResponse.Header or
  6208  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  6209  // googleapi.IsNotModified to check whether the returned error was because
  6210  // http.StatusNotModified was returned.
  6211  func (c *ProjectsTenantsAccountsBatchCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1UploadAccountResponse, error) {
  6212  	gensupport.SetOptions(c.urlParams_, opts...)
  6213  	res, err := c.doRequest("json")
  6214  	if res != nil && res.StatusCode == http.StatusNotModified {
  6215  		if res.Body != nil {
  6216  			res.Body.Close()
  6217  		}
  6218  		return nil, gensupport.WrapError(&googleapi.Error{
  6219  			Code:   res.StatusCode,
  6220  			Header: res.Header,
  6221  		})
  6222  	}
  6223  	if err != nil {
  6224  		return nil, err
  6225  	}
  6226  	defer googleapi.CloseBody(res)
  6227  	if err := googleapi.CheckResponse(res); err != nil {
  6228  		return nil, gensupport.WrapError(err)
  6229  	}
  6230  	ret := &GoogleCloudIdentitytoolkitV1UploadAccountResponse{
  6231  		ServerResponse: googleapi.ServerResponse{
  6232  			Header:         res.Header,
  6233  			HTTPStatusCode: res.StatusCode,
  6234  		},
  6235  	}
  6236  	target := &ret
  6237  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6238  		return nil, err
  6239  	}
  6240  	return ret, nil
  6241  }
  6242  
  6243  type ProjectsTenantsAccountsBatchDeleteCall struct {
  6244  	s                                                      *Service
  6245  	targetProjectId                                        string
  6246  	tenantId                                               string
  6247  	googlecloudidentitytoolkitv1batchdeleteaccountsrequest *GoogleCloudIdentitytoolkitV1BatchDeleteAccountsRequest
  6248  	urlParams_                                             gensupport.URLParams
  6249  	ctx_                                                   context.Context
  6250  	header_                                                http.Header
  6251  }
  6252  
  6253  // BatchDelete: Batch deletes multiple accounts. For accounts that fail to be
  6254  // deleted, error info is contained in the response. The method ignores
  6255  // accounts that do not exist or are duplicated in the request. This method
  6256  // requires a Google OAuth 2.0 credential with proper [permissions]
  6257  // (https://cloud.google.com/identity-platform/docs/access-control).
  6258  //
  6259  //   - targetProjectId: If `tenant_id` is specified, the ID of the Google Cloud
  6260  //     project that the Identity Platform tenant belongs to. Otherwise, the ID of
  6261  //     the Google Cloud project that accounts belong to.
  6262  //   - tenantId: If the accounts belong to an Identity Platform tenant, the ID of
  6263  //     the tenant. If the accounts belong to a default Identity Platform project,
  6264  //     the field is not needed.
  6265  func (r *ProjectsTenantsAccountsService) BatchDelete(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1batchdeleteaccountsrequest *GoogleCloudIdentitytoolkitV1BatchDeleteAccountsRequest) *ProjectsTenantsAccountsBatchDeleteCall {
  6266  	c := &ProjectsTenantsAccountsBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6267  	c.targetProjectId = targetProjectId
  6268  	c.tenantId = tenantId
  6269  	c.googlecloudidentitytoolkitv1batchdeleteaccountsrequest = googlecloudidentitytoolkitv1batchdeleteaccountsrequest
  6270  	return c
  6271  }
  6272  
  6273  // Fields allows partial responses to be retrieved. See
  6274  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6275  // details.
  6276  func (c *ProjectsTenantsAccountsBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsBatchDeleteCall {
  6277  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6278  	return c
  6279  }
  6280  
  6281  // Context sets the context to be used in this call's Do method.
  6282  func (c *ProjectsTenantsAccountsBatchDeleteCall) Context(ctx context.Context) *ProjectsTenantsAccountsBatchDeleteCall {
  6283  	c.ctx_ = ctx
  6284  	return c
  6285  }
  6286  
  6287  // Header returns a http.Header that can be modified by the caller to add
  6288  // headers to the request.
  6289  func (c *ProjectsTenantsAccountsBatchDeleteCall) Header() http.Header {
  6290  	if c.header_ == nil {
  6291  		c.header_ = make(http.Header)
  6292  	}
  6293  	return c.header_
  6294  }
  6295  
  6296  func (c *ProjectsTenantsAccountsBatchDeleteCall) doRequest(alt string) (*http.Response, error) {
  6297  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6298  	var body io.Reader = nil
  6299  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1batchdeleteaccountsrequest)
  6300  	if err != nil {
  6301  		return nil, err
  6302  	}
  6303  	c.urlParams_.Set("alt", alt)
  6304  	c.urlParams_.Set("prettyPrint", "false")
  6305  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts:batchDelete")
  6306  	urls += "?" + c.urlParams_.Encode()
  6307  	req, err := http.NewRequest("POST", urls, body)
  6308  	if err != nil {
  6309  		return nil, err
  6310  	}
  6311  	req.Header = reqHeaders
  6312  	googleapi.Expand(req.URL, map[string]string{
  6313  		"targetProjectId": c.targetProjectId,
  6314  		"tenantId":        c.tenantId,
  6315  	})
  6316  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6317  }
  6318  
  6319  // Do executes the "identitytoolkit.projects.tenants.accounts.batchDelete" call.
  6320  // Any non-2xx status code is an error. Response headers are in either
  6321  // *GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse.ServerResponse.Heade
  6322  // r or (if a response was returned at all) in error.(*googleapi.Error).Header.
  6323  // Use googleapi.IsNotModified to check whether the returned error was because
  6324  // http.StatusNotModified was returned.
  6325  func (c *ProjectsTenantsAccountsBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse, error) {
  6326  	gensupport.SetOptions(c.urlParams_, opts...)
  6327  	res, err := c.doRequest("json")
  6328  	if res != nil && res.StatusCode == http.StatusNotModified {
  6329  		if res.Body != nil {
  6330  			res.Body.Close()
  6331  		}
  6332  		return nil, gensupport.WrapError(&googleapi.Error{
  6333  			Code:   res.StatusCode,
  6334  			Header: res.Header,
  6335  		})
  6336  	}
  6337  	if err != nil {
  6338  		return nil, err
  6339  	}
  6340  	defer googleapi.CloseBody(res)
  6341  	if err := googleapi.CheckResponse(res); err != nil {
  6342  		return nil, gensupport.WrapError(err)
  6343  	}
  6344  	ret := &GoogleCloudIdentitytoolkitV1BatchDeleteAccountsResponse{
  6345  		ServerResponse: googleapi.ServerResponse{
  6346  			Header:         res.Header,
  6347  			HTTPStatusCode: res.StatusCode,
  6348  		},
  6349  	}
  6350  	target := &ret
  6351  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6352  		return nil, err
  6353  	}
  6354  	return ret, nil
  6355  }
  6356  
  6357  type ProjectsTenantsAccountsBatchGetCall struct {
  6358  	s               *Service
  6359  	targetProjectId string
  6360  	tenantId        string
  6361  	urlParams_      gensupport.URLParams
  6362  	ifNoneMatch_    string
  6363  	ctx_            context.Context
  6364  	header_         http.Header
  6365  }
  6366  
  6367  // BatchGet: Download account information for all accounts on the project in a
  6368  // paginated manner. To use this method requires a Google OAuth 2.0 credential
  6369  // with proper permissions
  6370  // (https://cloud.google.com/identity-platform/docs/access-control)..
  6371  // Furthermore, additional permissions are needed to get password hash,
  6372  // password salt, and password version from accounts; otherwise these fields
  6373  // are redacted.
  6374  //
  6375  //   - targetProjectId: If `tenant_id` is specified, the ID of the Google Cloud
  6376  //     project that the Identity Platform tenant belongs to. Otherwise, the ID of
  6377  //     the Google Cloud project that the accounts belong to.
  6378  //   - tenantId: The ID of the Identity Platform tenant the accounts belongs to.
  6379  //     If not specified, accounts on the Identity Platform project are returned.
  6380  func (r *ProjectsTenantsAccountsService) BatchGet(targetProjectId string, tenantId string) *ProjectsTenantsAccountsBatchGetCall {
  6381  	c := &ProjectsTenantsAccountsBatchGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6382  	c.targetProjectId = targetProjectId
  6383  	c.tenantId = tenantId
  6384  	return c
  6385  }
  6386  
  6387  // DelegatedProjectNumber sets the optional parameter "delegatedProjectNumber":
  6388  func (c *ProjectsTenantsAccountsBatchGetCall) DelegatedProjectNumber(delegatedProjectNumber int64) *ProjectsTenantsAccountsBatchGetCall {
  6389  	c.urlParams_.Set("delegatedProjectNumber", fmt.Sprint(delegatedProjectNumber))
  6390  	return c
  6391  }
  6392  
  6393  // MaxResults sets the optional parameter "maxResults": The maximum number of
  6394  // results to return. Must be at least 1 and no greater than 1000. By default,
  6395  // it is 20.
  6396  func (c *ProjectsTenantsAccountsBatchGetCall) MaxResults(maxResults int64) *ProjectsTenantsAccountsBatchGetCall {
  6397  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
  6398  	return c
  6399  }
  6400  
  6401  // NextPageToken sets the optional parameter "nextPageToken": The pagination
  6402  // token from the response of a previous request.
  6403  func (c *ProjectsTenantsAccountsBatchGetCall) NextPageToken(nextPageToken string) *ProjectsTenantsAccountsBatchGetCall {
  6404  	c.urlParams_.Set("nextPageToken", nextPageToken)
  6405  	return c
  6406  }
  6407  
  6408  // Fields allows partial responses to be retrieved. See
  6409  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6410  // details.
  6411  func (c *ProjectsTenantsAccountsBatchGetCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsBatchGetCall {
  6412  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6413  	return c
  6414  }
  6415  
  6416  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6417  // object's ETag matches the given value. This is useful for getting updates
  6418  // only after the object has changed since the last request.
  6419  func (c *ProjectsTenantsAccountsBatchGetCall) IfNoneMatch(entityTag string) *ProjectsTenantsAccountsBatchGetCall {
  6420  	c.ifNoneMatch_ = entityTag
  6421  	return c
  6422  }
  6423  
  6424  // Context sets the context to be used in this call's Do method.
  6425  func (c *ProjectsTenantsAccountsBatchGetCall) Context(ctx context.Context) *ProjectsTenantsAccountsBatchGetCall {
  6426  	c.ctx_ = ctx
  6427  	return c
  6428  }
  6429  
  6430  // Header returns a http.Header that can be modified by the caller to add
  6431  // headers to the request.
  6432  func (c *ProjectsTenantsAccountsBatchGetCall) Header() http.Header {
  6433  	if c.header_ == nil {
  6434  		c.header_ = make(http.Header)
  6435  	}
  6436  	return c.header_
  6437  }
  6438  
  6439  func (c *ProjectsTenantsAccountsBatchGetCall) doRequest(alt string) (*http.Response, error) {
  6440  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6441  	if c.ifNoneMatch_ != "" {
  6442  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6443  	}
  6444  	var body io.Reader = nil
  6445  	c.urlParams_.Set("alt", alt)
  6446  	c.urlParams_.Set("prettyPrint", "false")
  6447  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts:batchGet")
  6448  	urls += "?" + c.urlParams_.Encode()
  6449  	req, err := http.NewRequest("GET", urls, body)
  6450  	if err != nil {
  6451  		return nil, err
  6452  	}
  6453  	req.Header = reqHeaders
  6454  	googleapi.Expand(req.URL, map[string]string{
  6455  		"targetProjectId": c.targetProjectId,
  6456  		"tenantId":        c.tenantId,
  6457  	})
  6458  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6459  }
  6460  
  6461  // Do executes the "identitytoolkit.projects.tenants.accounts.batchGet" call.
  6462  // Any non-2xx status code is an error. Response headers are in either
  6463  // *GoogleCloudIdentitytoolkitV1DownloadAccountResponse.ServerResponse.Header
  6464  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  6465  // Use googleapi.IsNotModified to check whether the returned error was because
  6466  // http.StatusNotModified was returned.
  6467  func (c *ProjectsTenantsAccountsBatchGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1DownloadAccountResponse, error) {
  6468  	gensupport.SetOptions(c.urlParams_, opts...)
  6469  	res, err := c.doRequest("json")
  6470  	if res != nil && res.StatusCode == http.StatusNotModified {
  6471  		if res.Body != nil {
  6472  			res.Body.Close()
  6473  		}
  6474  		return nil, gensupport.WrapError(&googleapi.Error{
  6475  			Code:   res.StatusCode,
  6476  			Header: res.Header,
  6477  		})
  6478  	}
  6479  	if err != nil {
  6480  		return nil, err
  6481  	}
  6482  	defer googleapi.CloseBody(res)
  6483  	if err := googleapi.CheckResponse(res); err != nil {
  6484  		return nil, gensupport.WrapError(err)
  6485  	}
  6486  	ret := &GoogleCloudIdentitytoolkitV1DownloadAccountResponse{
  6487  		ServerResponse: googleapi.ServerResponse{
  6488  			Header:         res.Header,
  6489  			HTTPStatusCode: res.StatusCode,
  6490  		},
  6491  	}
  6492  	target := &ret
  6493  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6494  		return nil, err
  6495  	}
  6496  	return ret, nil
  6497  }
  6498  
  6499  // Pages invokes f for each page of results.
  6500  // A non-nil error returned from f will halt the iteration.
  6501  // The provided context supersedes any context provided to the Context method.
  6502  func (c *ProjectsTenantsAccountsBatchGetCall) Pages(ctx context.Context, f func(*GoogleCloudIdentitytoolkitV1DownloadAccountResponse) error) error {
  6503  	c.ctx_ = ctx
  6504  	defer c.NextPageToken(c.urlParams_.Get("nextPageToken"))
  6505  	for {
  6506  		x, err := c.Do()
  6507  		if err != nil {
  6508  			return err
  6509  		}
  6510  		if err := f(x); err != nil {
  6511  			return err
  6512  		}
  6513  		if x.NextPageToken == "" {
  6514  			return nil
  6515  		}
  6516  		c.NextPageToken(x.NextPageToken)
  6517  	}
  6518  }
  6519  
  6520  type ProjectsTenantsAccountsDeleteCall struct {
  6521  	s                                                *Service
  6522  	targetProjectId                                  string
  6523  	tenantId                                         string
  6524  	googlecloudidentitytoolkitv1deleteaccountrequest *GoogleCloudIdentitytoolkitV1DeleteAccountRequest
  6525  	urlParams_                                       gensupport.URLParams
  6526  	ctx_                                             context.Context
  6527  	header_                                          http.Header
  6528  }
  6529  
  6530  // Delete: Deletes a user's account.
  6531  //
  6532  //   - targetProjectId: The ID of the project which the account belongs to.
  6533  //     Should only be specified in authenticated requests that specify local_id
  6534  //     of an account.
  6535  //   - tenantId: The ID of the tenant that the account belongs to, if applicable.
  6536  //     Only require to be specified for authenticated requests bearing a Google
  6537  //     OAuth 2.0 credential that specify local_id of an account that belongs to
  6538  //     an Identity Platform tenant.
  6539  func (r *ProjectsTenantsAccountsService) Delete(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1deleteaccountrequest *GoogleCloudIdentitytoolkitV1DeleteAccountRequest) *ProjectsTenantsAccountsDeleteCall {
  6540  	c := &ProjectsTenantsAccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6541  	c.targetProjectId = targetProjectId
  6542  	c.tenantId = tenantId
  6543  	c.googlecloudidentitytoolkitv1deleteaccountrequest = googlecloudidentitytoolkitv1deleteaccountrequest
  6544  	return c
  6545  }
  6546  
  6547  // Fields allows partial responses to be retrieved. See
  6548  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6549  // details.
  6550  func (c *ProjectsTenantsAccountsDeleteCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsDeleteCall {
  6551  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6552  	return c
  6553  }
  6554  
  6555  // Context sets the context to be used in this call's Do method.
  6556  func (c *ProjectsTenantsAccountsDeleteCall) Context(ctx context.Context) *ProjectsTenantsAccountsDeleteCall {
  6557  	c.ctx_ = ctx
  6558  	return c
  6559  }
  6560  
  6561  // Header returns a http.Header that can be modified by the caller to add
  6562  // headers to the request.
  6563  func (c *ProjectsTenantsAccountsDeleteCall) Header() http.Header {
  6564  	if c.header_ == nil {
  6565  		c.header_ = make(http.Header)
  6566  	}
  6567  	return c.header_
  6568  }
  6569  
  6570  func (c *ProjectsTenantsAccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
  6571  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6572  	var body io.Reader = nil
  6573  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1deleteaccountrequest)
  6574  	if err != nil {
  6575  		return nil, err
  6576  	}
  6577  	c.urlParams_.Set("alt", alt)
  6578  	c.urlParams_.Set("prettyPrint", "false")
  6579  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts:delete")
  6580  	urls += "?" + c.urlParams_.Encode()
  6581  	req, err := http.NewRequest("POST", urls, body)
  6582  	if err != nil {
  6583  		return nil, err
  6584  	}
  6585  	req.Header = reqHeaders
  6586  	googleapi.Expand(req.URL, map[string]string{
  6587  		"targetProjectId": c.targetProjectId,
  6588  		"tenantId":        c.tenantId,
  6589  	})
  6590  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6591  }
  6592  
  6593  // Do executes the "identitytoolkit.projects.tenants.accounts.delete" call.
  6594  // Any non-2xx status code is an error. Response headers are in either
  6595  // *GoogleCloudIdentitytoolkitV1DeleteAccountResponse.ServerResponse.Header or
  6596  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  6597  // googleapi.IsNotModified to check whether the returned error was because
  6598  // http.StatusNotModified was returned.
  6599  func (c *ProjectsTenantsAccountsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1DeleteAccountResponse, error) {
  6600  	gensupport.SetOptions(c.urlParams_, opts...)
  6601  	res, err := c.doRequest("json")
  6602  	if res != nil && res.StatusCode == http.StatusNotModified {
  6603  		if res.Body != nil {
  6604  			res.Body.Close()
  6605  		}
  6606  		return nil, gensupport.WrapError(&googleapi.Error{
  6607  			Code:   res.StatusCode,
  6608  			Header: res.Header,
  6609  		})
  6610  	}
  6611  	if err != nil {
  6612  		return nil, err
  6613  	}
  6614  	defer googleapi.CloseBody(res)
  6615  	if err := googleapi.CheckResponse(res); err != nil {
  6616  		return nil, gensupport.WrapError(err)
  6617  	}
  6618  	ret := &GoogleCloudIdentitytoolkitV1DeleteAccountResponse{
  6619  		ServerResponse: googleapi.ServerResponse{
  6620  			Header:         res.Header,
  6621  			HTTPStatusCode: res.StatusCode,
  6622  		},
  6623  	}
  6624  	target := &ret
  6625  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6626  		return nil, err
  6627  	}
  6628  	return ret, nil
  6629  }
  6630  
  6631  type ProjectsTenantsAccountsLookupCall struct {
  6632  	s                                                 *Service
  6633  	targetProjectId                                   string
  6634  	tenantId                                          string
  6635  	googlecloudidentitytoolkitv1getaccountinforequest *GoogleCloudIdentitytoolkitV1GetAccountInfoRequest
  6636  	urlParams_                                        gensupport.URLParams
  6637  	ctx_                                              context.Context
  6638  	header_                                           http.Header
  6639  }
  6640  
  6641  // Lookup: Gets account information for all matched accounts. For an end user
  6642  // request, retrieves the account of the end user. For an admin request with
  6643  // Google OAuth 2.0 credential, retrieves one or multiple account(s) with
  6644  // matching criteria.
  6645  //
  6646  //   - targetProjectId: The ID of the Google Cloud project that the account or
  6647  //     the Identity Platform tenant specified by `tenant_id` belongs to. Should
  6648  //     only be specified by authenticated requests bearing a Google OAuth 2.0
  6649  //     credential with proper permissions
  6650  //     (https://cloud.google.com/identity-platform/docs/access-control).
  6651  //   - tenantId: The ID of the tenant that the account belongs to. Should only be
  6652  //     specified by authenticated requests from a developer.
  6653  func (r *ProjectsTenantsAccountsService) Lookup(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1getaccountinforequest *GoogleCloudIdentitytoolkitV1GetAccountInfoRequest) *ProjectsTenantsAccountsLookupCall {
  6654  	c := &ProjectsTenantsAccountsLookupCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6655  	c.targetProjectId = targetProjectId
  6656  	c.tenantId = tenantId
  6657  	c.googlecloudidentitytoolkitv1getaccountinforequest = googlecloudidentitytoolkitv1getaccountinforequest
  6658  	return c
  6659  }
  6660  
  6661  // Fields allows partial responses to be retrieved. See
  6662  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6663  // details.
  6664  func (c *ProjectsTenantsAccountsLookupCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsLookupCall {
  6665  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6666  	return c
  6667  }
  6668  
  6669  // Context sets the context to be used in this call's Do method.
  6670  func (c *ProjectsTenantsAccountsLookupCall) Context(ctx context.Context) *ProjectsTenantsAccountsLookupCall {
  6671  	c.ctx_ = ctx
  6672  	return c
  6673  }
  6674  
  6675  // Header returns a http.Header that can be modified by the caller to add
  6676  // headers to the request.
  6677  func (c *ProjectsTenantsAccountsLookupCall) Header() http.Header {
  6678  	if c.header_ == nil {
  6679  		c.header_ = make(http.Header)
  6680  	}
  6681  	return c.header_
  6682  }
  6683  
  6684  func (c *ProjectsTenantsAccountsLookupCall) doRequest(alt string) (*http.Response, error) {
  6685  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6686  	var body io.Reader = nil
  6687  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1getaccountinforequest)
  6688  	if err != nil {
  6689  		return nil, err
  6690  	}
  6691  	c.urlParams_.Set("alt", alt)
  6692  	c.urlParams_.Set("prettyPrint", "false")
  6693  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts:lookup")
  6694  	urls += "?" + c.urlParams_.Encode()
  6695  	req, err := http.NewRequest("POST", urls, body)
  6696  	if err != nil {
  6697  		return nil, err
  6698  	}
  6699  	req.Header = reqHeaders
  6700  	googleapi.Expand(req.URL, map[string]string{
  6701  		"targetProjectId": c.targetProjectId,
  6702  		"tenantId":        c.tenantId,
  6703  	})
  6704  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6705  }
  6706  
  6707  // Do executes the "identitytoolkit.projects.tenants.accounts.lookup" call.
  6708  // Any non-2xx status code is an error. Response headers are in either
  6709  // *GoogleCloudIdentitytoolkitV1GetAccountInfoResponse.ServerResponse.Header or
  6710  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  6711  // googleapi.IsNotModified to check whether the returned error was because
  6712  // http.StatusNotModified was returned.
  6713  func (c *ProjectsTenantsAccountsLookupCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetAccountInfoResponse, error) {
  6714  	gensupport.SetOptions(c.urlParams_, opts...)
  6715  	res, err := c.doRequest("json")
  6716  	if res != nil && res.StatusCode == http.StatusNotModified {
  6717  		if res.Body != nil {
  6718  			res.Body.Close()
  6719  		}
  6720  		return nil, gensupport.WrapError(&googleapi.Error{
  6721  			Code:   res.StatusCode,
  6722  			Header: res.Header,
  6723  		})
  6724  	}
  6725  	if err != nil {
  6726  		return nil, err
  6727  	}
  6728  	defer googleapi.CloseBody(res)
  6729  	if err := googleapi.CheckResponse(res); err != nil {
  6730  		return nil, gensupport.WrapError(err)
  6731  	}
  6732  	ret := &GoogleCloudIdentitytoolkitV1GetAccountInfoResponse{
  6733  		ServerResponse: googleapi.ServerResponse{
  6734  			Header:         res.Header,
  6735  			HTTPStatusCode: res.StatusCode,
  6736  		},
  6737  	}
  6738  	target := &ret
  6739  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6740  		return nil, err
  6741  	}
  6742  	return ret, nil
  6743  }
  6744  
  6745  type ProjectsTenantsAccountsQueryCall struct {
  6746  	s                                                *Service
  6747  	targetProjectId                                  string
  6748  	tenantId                                         string
  6749  	googlecloudidentitytoolkitv1queryuserinforequest *GoogleCloudIdentitytoolkitV1QueryUserInfoRequest
  6750  	urlParams_                                       gensupport.URLParams
  6751  	ctx_                                             context.Context
  6752  	header_                                          http.Header
  6753  }
  6754  
  6755  // Query: Looks up user accounts within a project or a tenant based on
  6756  // conditions in the request.
  6757  //
  6758  // - targetProjectId: The ID of the project to which the result is scoped.
  6759  // - tenantId: The ID of the tenant to which the result is scoped.
  6760  func (r *ProjectsTenantsAccountsService) Query(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1queryuserinforequest *GoogleCloudIdentitytoolkitV1QueryUserInfoRequest) *ProjectsTenantsAccountsQueryCall {
  6761  	c := &ProjectsTenantsAccountsQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6762  	c.targetProjectId = targetProjectId
  6763  	c.tenantId = tenantId
  6764  	c.googlecloudidentitytoolkitv1queryuserinforequest = googlecloudidentitytoolkitv1queryuserinforequest
  6765  	return c
  6766  }
  6767  
  6768  // Fields allows partial responses to be retrieved. See
  6769  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6770  // details.
  6771  func (c *ProjectsTenantsAccountsQueryCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsQueryCall {
  6772  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6773  	return c
  6774  }
  6775  
  6776  // Context sets the context to be used in this call's Do method.
  6777  func (c *ProjectsTenantsAccountsQueryCall) Context(ctx context.Context) *ProjectsTenantsAccountsQueryCall {
  6778  	c.ctx_ = ctx
  6779  	return c
  6780  }
  6781  
  6782  // Header returns a http.Header that can be modified by the caller to add
  6783  // headers to the request.
  6784  func (c *ProjectsTenantsAccountsQueryCall) Header() http.Header {
  6785  	if c.header_ == nil {
  6786  		c.header_ = make(http.Header)
  6787  	}
  6788  	return c.header_
  6789  }
  6790  
  6791  func (c *ProjectsTenantsAccountsQueryCall) doRequest(alt string) (*http.Response, error) {
  6792  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6793  	var body io.Reader = nil
  6794  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1queryuserinforequest)
  6795  	if err != nil {
  6796  		return nil, err
  6797  	}
  6798  	c.urlParams_.Set("alt", alt)
  6799  	c.urlParams_.Set("prettyPrint", "false")
  6800  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts:query")
  6801  	urls += "?" + c.urlParams_.Encode()
  6802  	req, err := http.NewRequest("POST", urls, body)
  6803  	if err != nil {
  6804  		return nil, err
  6805  	}
  6806  	req.Header = reqHeaders
  6807  	googleapi.Expand(req.URL, map[string]string{
  6808  		"targetProjectId": c.targetProjectId,
  6809  		"tenantId":        c.tenantId,
  6810  	})
  6811  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6812  }
  6813  
  6814  // Do executes the "identitytoolkit.projects.tenants.accounts.query" call.
  6815  // Any non-2xx status code is an error. Response headers are in either
  6816  // *GoogleCloudIdentitytoolkitV1QueryUserInfoResponse.ServerResponse.Header or
  6817  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  6818  // googleapi.IsNotModified to check whether the returned error was because
  6819  // http.StatusNotModified was returned.
  6820  func (c *ProjectsTenantsAccountsQueryCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1QueryUserInfoResponse, error) {
  6821  	gensupport.SetOptions(c.urlParams_, opts...)
  6822  	res, err := c.doRequest("json")
  6823  	if res != nil && res.StatusCode == http.StatusNotModified {
  6824  		if res.Body != nil {
  6825  			res.Body.Close()
  6826  		}
  6827  		return nil, gensupport.WrapError(&googleapi.Error{
  6828  			Code:   res.StatusCode,
  6829  			Header: res.Header,
  6830  		})
  6831  	}
  6832  	if err != nil {
  6833  		return nil, err
  6834  	}
  6835  	defer googleapi.CloseBody(res)
  6836  	if err := googleapi.CheckResponse(res); err != nil {
  6837  		return nil, gensupport.WrapError(err)
  6838  	}
  6839  	ret := &GoogleCloudIdentitytoolkitV1QueryUserInfoResponse{
  6840  		ServerResponse: googleapi.ServerResponse{
  6841  			Header:         res.Header,
  6842  			HTTPStatusCode: res.StatusCode,
  6843  		},
  6844  	}
  6845  	target := &ret
  6846  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6847  		return nil, err
  6848  	}
  6849  	return ret, nil
  6850  }
  6851  
  6852  type ProjectsTenantsAccountsSendOobCodeCall struct {
  6853  	s                                             *Service
  6854  	targetProjectId                               string
  6855  	tenantId                                      string
  6856  	googlecloudidentitytoolkitv1getoobcoderequest *GoogleCloudIdentitytoolkitV1GetOobCodeRequest
  6857  	urlParams_                                    gensupport.URLParams
  6858  	ctx_                                          context.Context
  6859  	header_                                       http.Header
  6860  }
  6861  
  6862  // SendOobCode: Sends an out-of-band confirmation code for an account. Requests
  6863  // from a authenticated request can optionally return a link including the OOB
  6864  // code instead of sending it.
  6865  //
  6866  //   - targetProjectId: The Project ID of the Identity Platform project which the
  6867  //     account belongs to. To specify this field, it requires a Google OAuth 2.0
  6868  //     credential with proper permissions
  6869  //     (https://cloud.google.com/identity-platform/docs/access-control).
  6870  //   - tenantId: The tenant ID of the Identity Platform tenant the account
  6871  //     belongs to.
  6872  func (r *ProjectsTenantsAccountsService) SendOobCode(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1getoobcoderequest *GoogleCloudIdentitytoolkitV1GetOobCodeRequest) *ProjectsTenantsAccountsSendOobCodeCall {
  6873  	c := &ProjectsTenantsAccountsSendOobCodeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6874  	c.targetProjectId = targetProjectId
  6875  	c.tenantId = tenantId
  6876  	c.googlecloudidentitytoolkitv1getoobcoderequest = googlecloudidentitytoolkitv1getoobcoderequest
  6877  	return c
  6878  }
  6879  
  6880  // Fields allows partial responses to be retrieved. See
  6881  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6882  // details.
  6883  func (c *ProjectsTenantsAccountsSendOobCodeCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsSendOobCodeCall {
  6884  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6885  	return c
  6886  }
  6887  
  6888  // Context sets the context to be used in this call's Do method.
  6889  func (c *ProjectsTenantsAccountsSendOobCodeCall) Context(ctx context.Context) *ProjectsTenantsAccountsSendOobCodeCall {
  6890  	c.ctx_ = ctx
  6891  	return c
  6892  }
  6893  
  6894  // Header returns a http.Header that can be modified by the caller to add
  6895  // headers to the request.
  6896  func (c *ProjectsTenantsAccountsSendOobCodeCall) Header() http.Header {
  6897  	if c.header_ == nil {
  6898  		c.header_ = make(http.Header)
  6899  	}
  6900  	return c.header_
  6901  }
  6902  
  6903  func (c *ProjectsTenantsAccountsSendOobCodeCall) doRequest(alt string) (*http.Response, error) {
  6904  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6905  	var body io.Reader = nil
  6906  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1getoobcoderequest)
  6907  	if err != nil {
  6908  		return nil, err
  6909  	}
  6910  	c.urlParams_.Set("alt", alt)
  6911  	c.urlParams_.Set("prettyPrint", "false")
  6912  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts:sendOobCode")
  6913  	urls += "?" + c.urlParams_.Encode()
  6914  	req, err := http.NewRequest("POST", urls, body)
  6915  	if err != nil {
  6916  		return nil, err
  6917  	}
  6918  	req.Header = reqHeaders
  6919  	googleapi.Expand(req.URL, map[string]string{
  6920  		"targetProjectId": c.targetProjectId,
  6921  		"tenantId":        c.tenantId,
  6922  	})
  6923  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6924  }
  6925  
  6926  // Do executes the "identitytoolkit.projects.tenants.accounts.sendOobCode" call.
  6927  // Any non-2xx status code is an error. Response headers are in either
  6928  // *GoogleCloudIdentitytoolkitV1GetOobCodeResponse.ServerResponse.Header or (if
  6929  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  6930  // googleapi.IsNotModified to check whether the returned error was because
  6931  // http.StatusNotModified was returned.
  6932  func (c *ProjectsTenantsAccountsSendOobCodeCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetOobCodeResponse, error) {
  6933  	gensupport.SetOptions(c.urlParams_, opts...)
  6934  	res, err := c.doRequest("json")
  6935  	if res != nil && res.StatusCode == http.StatusNotModified {
  6936  		if res.Body != nil {
  6937  			res.Body.Close()
  6938  		}
  6939  		return nil, gensupport.WrapError(&googleapi.Error{
  6940  			Code:   res.StatusCode,
  6941  			Header: res.Header,
  6942  		})
  6943  	}
  6944  	if err != nil {
  6945  		return nil, err
  6946  	}
  6947  	defer googleapi.CloseBody(res)
  6948  	if err := googleapi.CheckResponse(res); err != nil {
  6949  		return nil, gensupport.WrapError(err)
  6950  	}
  6951  	ret := &GoogleCloudIdentitytoolkitV1GetOobCodeResponse{
  6952  		ServerResponse: googleapi.ServerResponse{
  6953  			Header:         res.Header,
  6954  			HTTPStatusCode: res.StatusCode,
  6955  		},
  6956  	}
  6957  	target := &ret
  6958  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6959  		return nil, err
  6960  	}
  6961  	return ret, nil
  6962  }
  6963  
  6964  type ProjectsTenantsAccountsUpdateCall struct {
  6965  	s                                                 *Service
  6966  	targetProjectId                                   string
  6967  	tenantId                                          string
  6968  	googlecloudidentitytoolkitv1setaccountinforequest *GoogleCloudIdentitytoolkitV1SetAccountInfoRequest
  6969  	urlParams_                                        gensupport.URLParams
  6970  	ctx_                                              context.Context
  6971  	header_                                           http.Header
  6972  }
  6973  
  6974  // Update: Updates account-related information for the specified user by
  6975  // setting specific fields or applying action codes. Requests from
  6976  // administrators and end users are supported.
  6977  //
  6978  //   - targetProjectId: The project ID for the project that the account belongs
  6979  //     to. Specifying this field requires Google OAuth 2.0 credential with proper
  6980  //     [permissions]
  6981  //     (https://cloud.google.com/identity-platform/docs/access-control). Requests
  6982  //     from end users should pass an Identity Platform ID token instead.
  6983  //   - tenantId: The tenant ID of the Identity Platform tenant that the account
  6984  //     belongs to. Requests from end users should pass an Identity Platform ID
  6985  //     token rather than setting this field.
  6986  func (r *ProjectsTenantsAccountsService) Update(targetProjectId string, tenantId string, googlecloudidentitytoolkitv1setaccountinforequest *GoogleCloudIdentitytoolkitV1SetAccountInfoRequest) *ProjectsTenantsAccountsUpdateCall {
  6987  	c := &ProjectsTenantsAccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6988  	c.targetProjectId = targetProjectId
  6989  	c.tenantId = tenantId
  6990  	c.googlecloudidentitytoolkitv1setaccountinforequest = googlecloudidentitytoolkitv1setaccountinforequest
  6991  	return c
  6992  }
  6993  
  6994  // Fields allows partial responses to be retrieved. See
  6995  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6996  // details.
  6997  func (c *ProjectsTenantsAccountsUpdateCall) Fields(s ...googleapi.Field) *ProjectsTenantsAccountsUpdateCall {
  6998  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6999  	return c
  7000  }
  7001  
  7002  // Context sets the context to be used in this call's Do method.
  7003  func (c *ProjectsTenantsAccountsUpdateCall) Context(ctx context.Context) *ProjectsTenantsAccountsUpdateCall {
  7004  	c.ctx_ = ctx
  7005  	return c
  7006  }
  7007  
  7008  // Header returns a http.Header that can be modified by the caller to add
  7009  // headers to the request.
  7010  func (c *ProjectsTenantsAccountsUpdateCall) Header() http.Header {
  7011  	if c.header_ == nil {
  7012  		c.header_ = make(http.Header)
  7013  	}
  7014  	return c.header_
  7015  }
  7016  
  7017  func (c *ProjectsTenantsAccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
  7018  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7019  	var body io.Reader = nil
  7020  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudidentitytoolkitv1setaccountinforequest)
  7021  	if err != nil {
  7022  		return nil, err
  7023  	}
  7024  	c.urlParams_.Set("alt", alt)
  7025  	c.urlParams_.Set("prettyPrint", "false")
  7026  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{+targetProjectId}/tenants/{+tenantId}/accounts:update")
  7027  	urls += "?" + c.urlParams_.Encode()
  7028  	req, err := http.NewRequest("POST", urls, body)
  7029  	if err != nil {
  7030  		return nil, err
  7031  	}
  7032  	req.Header = reqHeaders
  7033  	googleapi.Expand(req.URL, map[string]string{
  7034  		"targetProjectId": c.targetProjectId,
  7035  		"tenantId":        c.tenantId,
  7036  	})
  7037  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7038  }
  7039  
  7040  // Do executes the "identitytoolkit.projects.tenants.accounts.update" call.
  7041  // Any non-2xx status code is an error. Response headers are in either
  7042  // *GoogleCloudIdentitytoolkitV1SetAccountInfoResponse.ServerResponse.Header or
  7043  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  7044  // googleapi.IsNotModified to check whether the returned error was because
  7045  // http.StatusNotModified was returned.
  7046  func (c *ProjectsTenantsAccountsUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1SetAccountInfoResponse, error) {
  7047  	gensupport.SetOptions(c.urlParams_, opts...)
  7048  	res, err := c.doRequest("json")
  7049  	if res != nil && res.StatusCode == http.StatusNotModified {
  7050  		if res.Body != nil {
  7051  			res.Body.Close()
  7052  		}
  7053  		return nil, gensupport.WrapError(&googleapi.Error{
  7054  			Code:   res.StatusCode,
  7055  			Header: res.Header,
  7056  		})
  7057  	}
  7058  	if err != nil {
  7059  		return nil, err
  7060  	}
  7061  	defer googleapi.CloseBody(res)
  7062  	if err := googleapi.CheckResponse(res); err != nil {
  7063  		return nil, gensupport.WrapError(err)
  7064  	}
  7065  	ret := &GoogleCloudIdentitytoolkitV1SetAccountInfoResponse{
  7066  		ServerResponse: googleapi.ServerResponse{
  7067  			Header:         res.Header,
  7068  			HTTPStatusCode: res.StatusCode,
  7069  		},
  7070  	}
  7071  	target := &ret
  7072  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7073  		return nil, err
  7074  	}
  7075  	return ret, nil
  7076  }
  7077  
  7078  type V1GetProjectsCall struct {
  7079  	s            *Service
  7080  	urlParams_   gensupport.URLParams
  7081  	ifNoneMatch_ string
  7082  	ctx_         context.Context
  7083  	header_      http.Header
  7084  }
  7085  
  7086  // GetProjects: Gets a project's public Identity Toolkit configuration.
  7087  // (Legacy) This method also supports authenticated calls from a developer to
  7088  // retrieve non-public configuration.
  7089  func (r *V1Service) GetProjects() *V1GetProjectsCall {
  7090  	c := &V1GetProjectsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7091  	return c
  7092  }
  7093  
  7094  // AndroidPackageName sets the optional parameter "androidPackageName": Android
  7095  // package name to check against the real android package name. If this field
  7096  // is provided, and sha1_cert_hash is not provided, the action will throw an
  7097  // error if this does not match the real android package name.
  7098  func (c *V1GetProjectsCall) AndroidPackageName(androidPackageName string) *V1GetProjectsCall {
  7099  	c.urlParams_.Set("androidPackageName", androidPackageName)
  7100  	return c
  7101  }
  7102  
  7103  // ClientId sets the optional parameter "clientId": The RP OAuth client ID. If
  7104  // set, a check will be performed to ensure that the OAuth client is valid for
  7105  // the retrieved project and the request rejected with a client error if not
  7106  // valid.
  7107  func (c *V1GetProjectsCall) ClientId(clientId string) *V1GetProjectsCall {
  7108  	c.urlParams_.Set("clientId", clientId)
  7109  	return c
  7110  }
  7111  
  7112  // DelegatedProjectNumber sets the optional parameter "delegatedProjectNumber":
  7113  // Project Number of the delegated project request. This field should only be
  7114  // used as part of the Firebase V1 migration.
  7115  func (c *V1GetProjectsCall) DelegatedProjectNumber(delegatedProjectNumber int64) *V1GetProjectsCall {
  7116  	c.urlParams_.Set("delegatedProjectNumber", fmt.Sprint(delegatedProjectNumber))
  7117  	return c
  7118  }
  7119  
  7120  // FirebaseAppId sets the optional parameter "firebaseAppId": The Firebase app
  7121  // ID, for applications that use Firebase. This can be found in the Firebase
  7122  // console for your project. If set, a check will be performed to ensure that
  7123  // the app ID is valid for the retrieved project. If not valid, the request
  7124  // will be rejected with a client error.
  7125  func (c *V1GetProjectsCall) FirebaseAppId(firebaseAppId string) *V1GetProjectsCall {
  7126  	c.urlParams_.Set("firebaseAppId", firebaseAppId)
  7127  	return c
  7128  }
  7129  
  7130  // IosBundleId sets the optional parameter "iosBundleId": iOS bundle id to
  7131  // check against the real ios bundle id. If this field is provided, the action
  7132  // will throw an error if this does not match the real iOS bundle id.
  7133  func (c *V1GetProjectsCall) IosBundleId(iosBundleId string) *V1GetProjectsCall {
  7134  	c.urlParams_.Set("iosBundleId", iosBundleId)
  7135  	return c
  7136  }
  7137  
  7138  // ProjectNumber sets the optional parameter "projectNumber": Project number of
  7139  // the configuration to retrieve. This field is deprecated and should not be
  7140  // used by new integrations.
  7141  func (c *V1GetProjectsCall) ProjectNumber(projectNumber int64) *V1GetProjectsCall {
  7142  	c.urlParams_.Set("projectNumber", fmt.Sprint(projectNumber))
  7143  	return c
  7144  }
  7145  
  7146  // ReturnDynamicLink sets the optional parameter "returnDynamicLink": Whether
  7147  // dynamic link should be returned.
  7148  func (c *V1GetProjectsCall) ReturnDynamicLink(returnDynamicLink bool) *V1GetProjectsCall {
  7149  	c.urlParams_.Set("returnDynamicLink", fmt.Sprint(returnDynamicLink))
  7150  	return c
  7151  }
  7152  
  7153  // Sha1Cert sets the optional parameter "sha1Cert": SHA-1 Android application
  7154  // cert hash. If set, a check will be performed to ensure that the cert hash is
  7155  // valid for the retrieved project and android_package_name.
  7156  func (c *V1GetProjectsCall) Sha1Cert(sha1Cert string) *V1GetProjectsCall {
  7157  	c.urlParams_.Set("sha1Cert", sha1Cert)
  7158  	return c
  7159  }
  7160  
  7161  // Fields allows partial responses to be retrieved. See
  7162  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7163  // details.
  7164  func (c *V1GetProjectsCall) Fields(s ...googleapi.Field) *V1GetProjectsCall {
  7165  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7166  	return c
  7167  }
  7168  
  7169  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7170  // object's ETag matches the given value. This is useful for getting updates
  7171  // only after the object has changed since the last request.
  7172  func (c *V1GetProjectsCall) IfNoneMatch(entityTag string) *V1GetProjectsCall {
  7173  	c.ifNoneMatch_ = entityTag
  7174  	return c
  7175  }
  7176  
  7177  // Context sets the context to be used in this call's Do method.
  7178  func (c *V1GetProjectsCall) Context(ctx context.Context) *V1GetProjectsCall {
  7179  	c.ctx_ = ctx
  7180  	return c
  7181  }
  7182  
  7183  // Header returns a http.Header that can be modified by the caller to add
  7184  // headers to the request.
  7185  func (c *V1GetProjectsCall) Header() http.Header {
  7186  	if c.header_ == nil {
  7187  		c.header_ = make(http.Header)
  7188  	}
  7189  	return c.header_
  7190  }
  7191  
  7192  func (c *V1GetProjectsCall) doRequest(alt string) (*http.Response, error) {
  7193  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7194  	if c.ifNoneMatch_ != "" {
  7195  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7196  	}
  7197  	var body io.Reader = nil
  7198  	c.urlParams_.Set("alt", alt)
  7199  	c.urlParams_.Set("prettyPrint", "false")
  7200  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects")
  7201  	urls += "?" + c.urlParams_.Encode()
  7202  	req, err := http.NewRequest("GET", urls, body)
  7203  	if err != nil {
  7204  		return nil, err
  7205  	}
  7206  	req.Header = reqHeaders
  7207  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7208  }
  7209  
  7210  // Do executes the "identitytoolkit.getProjects" call.
  7211  // Any non-2xx status code is an error. Response headers are in either
  7212  // *GoogleCloudIdentitytoolkitV1GetProjectConfigResponse.ServerResponse.Header
  7213  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  7214  // Use googleapi.IsNotModified to check whether the returned error was because
  7215  // http.StatusNotModified was returned.
  7216  func (c *V1GetProjectsCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetProjectConfigResponse, error) {
  7217  	gensupport.SetOptions(c.urlParams_, opts...)
  7218  	res, err := c.doRequest("json")
  7219  	if res != nil && res.StatusCode == http.StatusNotModified {
  7220  		if res.Body != nil {
  7221  			res.Body.Close()
  7222  		}
  7223  		return nil, gensupport.WrapError(&googleapi.Error{
  7224  			Code:   res.StatusCode,
  7225  			Header: res.Header,
  7226  		})
  7227  	}
  7228  	if err != nil {
  7229  		return nil, err
  7230  	}
  7231  	defer googleapi.CloseBody(res)
  7232  	if err := googleapi.CheckResponse(res); err != nil {
  7233  		return nil, gensupport.WrapError(err)
  7234  	}
  7235  	ret := &GoogleCloudIdentitytoolkitV1GetProjectConfigResponse{
  7236  		ServerResponse: googleapi.ServerResponse{
  7237  			Header:         res.Header,
  7238  			HTTPStatusCode: res.StatusCode,
  7239  		},
  7240  	}
  7241  	target := &ret
  7242  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7243  		return nil, err
  7244  	}
  7245  	return ret, nil
  7246  }
  7247  
  7248  type V1GetPublicKeysCall struct {
  7249  	s            *Service
  7250  	urlParams_   gensupport.URLParams
  7251  	ifNoneMatch_ string
  7252  	ctx_         context.Context
  7253  	header_      http.Header
  7254  }
  7255  
  7256  // GetPublicKeys: Retrieves public keys of the legacy Identity Toolkit token
  7257  // signer to enable third parties to verify the legacy ID token. For now the
  7258  // X509 pem cert is the only format supported.
  7259  func (r *V1Service) GetPublicKeys() *V1GetPublicKeysCall {
  7260  	c := &V1GetPublicKeysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7261  	return c
  7262  }
  7263  
  7264  // Fields allows partial responses to be retrieved. See
  7265  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7266  // details.
  7267  func (c *V1GetPublicKeysCall) Fields(s ...googleapi.Field) *V1GetPublicKeysCall {
  7268  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7269  	return c
  7270  }
  7271  
  7272  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7273  // object's ETag matches the given value. This is useful for getting updates
  7274  // only after the object has changed since the last request.
  7275  func (c *V1GetPublicKeysCall) IfNoneMatch(entityTag string) *V1GetPublicKeysCall {
  7276  	c.ifNoneMatch_ = entityTag
  7277  	return c
  7278  }
  7279  
  7280  // Context sets the context to be used in this call's Do method.
  7281  func (c *V1GetPublicKeysCall) Context(ctx context.Context) *V1GetPublicKeysCall {
  7282  	c.ctx_ = ctx
  7283  	return c
  7284  }
  7285  
  7286  // Header returns a http.Header that can be modified by the caller to add
  7287  // headers to the request.
  7288  func (c *V1GetPublicKeysCall) Header() http.Header {
  7289  	if c.header_ == nil {
  7290  		c.header_ = make(http.Header)
  7291  	}
  7292  	return c.header_
  7293  }
  7294  
  7295  func (c *V1GetPublicKeysCall) doRequest(alt string) (*http.Response, error) {
  7296  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7297  	if c.ifNoneMatch_ != "" {
  7298  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7299  	}
  7300  	var body io.Reader = nil
  7301  	c.urlParams_.Set("alt", alt)
  7302  	c.urlParams_.Set("prettyPrint", "false")
  7303  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/publicKeys")
  7304  	urls += "?" + c.urlParams_.Encode()
  7305  	req, err := http.NewRequest("GET", urls, body)
  7306  	if err != nil {
  7307  		return nil, err
  7308  	}
  7309  	req.Header = reqHeaders
  7310  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7311  }
  7312  
  7313  // Do executes the "identitytoolkit.getPublicKeys" call.
  7314  func (c *V1GetPublicKeysCall) Do(opts ...googleapi.CallOption) error {
  7315  	gensupport.SetOptions(c.urlParams_, opts...)
  7316  	res, err := c.doRequest("json")
  7317  	if err != nil {
  7318  		return err
  7319  	}
  7320  	defer googleapi.CloseBody(res)
  7321  	if err := googleapi.CheckResponse(res); err != nil {
  7322  		return gensupport.WrapError(err)
  7323  	}
  7324  	return nil
  7325  }
  7326  
  7327  type V1GetRecaptchaParamsCall struct {
  7328  	s            *Service
  7329  	urlParams_   gensupport.URLParams
  7330  	ifNoneMatch_ string
  7331  	ctx_         context.Context
  7332  	header_      http.Header
  7333  }
  7334  
  7335  // GetRecaptchaParams: Gets parameters needed for generating a reCAPTCHA
  7336  // challenge.
  7337  func (r *V1Service) GetRecaptchaParams() *V1GetRecaptchaParamsCall {
  7338  	c := &V1GetRecaptchaParamsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7339  	return c
  7340  }
  7341  
  7342  // Fields allows partial responses to be retrieved. See
  7343  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7344  // details.
  7345  func (c *V1GetRecaptchaParamsCall) Fields(s ...googleapi.Field) *V1GetRecaptchaParamsCall {
  7346  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7347  	return c
  7348  }
  7349  
  7350  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7351  // object's ETag matches the given value. This is useful for getting updates
  7352  // only after the object has changed since the last request.
  7353  func (c *V1GetRecaptchaParamsCall) IfNoneMatch(entityTag string) *V1GetRecaptchaParamsCall {
  7354  	c.ifNoneMatch_ = entityTag
  7355  	return c
  7356  }
  7357  
  7358  // Context sets the context to be used in this call's Do method.
  7359  func (c *V1GetRecaptchaParamsCall) Context(ctx context.Context) *V1GetRecaptchaParamsCall {
  7360  	c.ctx_ = ctx
  7361  	return c
  7362  }
  7363  
  7364  // Header returns a http.Header that can be modified by the caller to add
  7365  // headers to the request.
  7366  func (c *V1GetRecaptchaParamsCall) Header() http.Header {
  7367  	if c.header_ == nil {
  7368  		c.header_ = make(http.Header)
  7369  	}
  7370  	return c.header_
  7371  }
  7372  
  7373  func (c *V1GetRecaptchaParamsCall) doRequest(alt string) (*http.Response, error) {
  7374  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7375  	if c.ifNoneMatch_ != "" {
  7376  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7377  	}
  7378  	var body io.Reader = nil
  7379  	c.urlParams_.Set("alt", alt)
  7380  	c.urlParams_.Set("prettyPrint", "false")
  7381  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/recaptchaParams")
  7382  	urls += "?" + c.urlParams_.Encode()
  7383  	req, err := http.NewRequest("GET", urls, body)
  7384  	if err != nil {
  7385  		return nil, err
  7386  	}
  7387  	req.Header = reqHeaders
  7388  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7389  }
  7390  
  7391  // Do executes the "identitytoolkit.getRecaptchaParams" call.
  7392  // Any non-2xx status code is an error. Response headers are in either
  7393  // *GoogleCloudIdentitytoolkitV1GetRecaptchaParamResponse.ServerResponse.Header
  7394  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  7395  // Use googleapi.IsNotModified to check whether the returned error was because
  7396  // http.StatusNotModified was returned.
  7397  func (c *V1GetRecaptchaParamsCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetRecaptchaParamResponse, error) {
  7398  	gensupport.SetOptions(c.urlParams_, opts...)
  7399  	res, err := c.doRequest("json")
  7400  	if res != nil && res.StatusCode == http.StatusNotModified {
  7401  		if res.Body != nil {
  7402  			res.Body.Close()
  7403  		}
  7404  		return nil, gensupport.WrapError(&googleapi.Error{
  7405  			Code:   res.StatusCode,
  7406  			Header: res.Header,
  7407  		})
  7408  	}
  7409  	if err != nil {
  7410  		return nil, err
  7411  	}
  7412  	defer googleapi.CloseBody(res)
  7413  	if err := googleapi.CheckResponse(res); err != nil {
  7414  		return nil, gensupport.WrapError(err)
  7415  	}
  7416  	ret := &GoogleCloudIdentitytoolkitV1GetRecaptchaParamResponse{
  7417  		ServerResponse: googleapi.ServerResponse{
  7418  			Header:         res.Header,
  7419  			HTTPStatusCode: res.StatusCode,
  7420  		},
  7421  	}
  7422  	target := &ret
  7423  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7424  		return nil, err
  7425  	}
  7426  	return ret, nil
  7427  }
  7428  
  7429  type V1GetSessionCookiePublicKeysCall struct {
  7430  	s            *Service
  7431  	urlParams_   gensupport.URLParams
  7432  	ifNoneMatch_ string
  7433  	ctx_         context.Context
  7434  	header_      http.Header
  7435  }
  7436  
  7437  // GetSessionCookiePublicKeys: Retrieves the set of public keys of the session
  7438  // cookie JSON Web Token (JWT) signer that can be used to validate the session
  7439  // cookie created through createSessionCookie.
  7440  func (r *V1Service) GetSessionCookiePublicKeys() *V1GetSessionCookiePublicKeysCall {
  7441  	c := &V1GetSessionCookiePublicKeysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7442  	return c
  7443  }
  7444  
  7445  // Fields allows partial responses to be retrieved. See
  7446  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7447  // details.
  7448  func (c *V1GetSessionCookiePublicKeysCall) Fields(s ...googleapi.Field) *V1GetSessionCookiePublicKeysCall {
  7449  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7450  	return c
  7451  }
  7452  
  7453  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7454  // object's ETag matches the given value. This is useful for getting updates
  7455  // only after the object has changed since the last request.
  7456  func (c *V1GetSessionCookiePublicKeysCall) IfNoneMatch(entityTag string) *V1GetSessionCookiePublicKeysCall {
  7457  	c.ifNoneMatch_ = entityTag
  7458  	return c
  7459  }
  7460  
  7461  // Context sets the context to be used in this call's Do method.
  7462  func (c *V1GetSessionCookiePublicKeysCall) Context(ctx context.Context) *V1GetSessionCookiePublicKeysCall {
  7463  	c.ctx_ = ctx
  7464  	return c
  7465  }
  7466  
  7467  // Header returns a http.Header that can be modified by the caller to add
  7468  // headers to the request.
  7469  func (c *V1GetSessionCookiePublicKeysCall) Header() http.Header {
  7470  	if c.header_ == nil {
  7471  		c.header_ = make(http.Header)
  7472  	}
  7473  	return c.header_
  7474  }
  7475  
  7476  func (c *V1GetSessionCookiePublicKeysCall) doRequest(alt string) (*http.Response, error) {
  7477  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7478  	if c.ifNoneMatch_ != "" {
  7479  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7480  	}
  7481  	var body io.Reader = nil
  7482  	c.urlParams_.Set("alt", alt)
  7483  	c.urlParams_.Set("prettyPrint", "false")
  7484  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/sessionCookiePublicKeys")
  7485  	urls += "?" + c.urlParams_.Encode()
  7486  	req, err := http.NewRequest("GET", urls, body)
  7487  	if err != nil {
  7488  		return nil, err
  7489  	}
  7490  	req.Header = reqHeaders
  7491  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7492  }
  7493  
  7494  // Do executes the "identitytoolkit.getSessionCookiePublicKeys" call.
  7495  // Any non-2xx status code is an error. Response headers are in either
  7496  // *GoogleCloudIdentitytoolkitV1GetSessionCookiePublicKeysResponse.ServerRespons
  7497  // e.Header or (if a response was returned at all) in
  7498  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7499  // whether the returned error was because http.StatusNotModified was returned.
  7500  func (c *V1GetSessionCookiePublicKeysCall) Do(opts ...googleapi.CallOption) (*GoogleCloudIdentitytoolkitV1GetSessionCookiePublicKeysResponse, error) {
  7501  	gensupport.SetOptions(c.urlParams_, opts...)
  7502  	res, err := c.doRequest("json")
  7503  	if res != nil && res.StatusCode == http.StatusNotModified {
  7504  		if res.Body != nil {
  7505  			res.Body.Close()
  7506  		}
  7507  		return nil, gensupport.WrapError(&googleapi.Error{
  7508  			Code:   res.StatusCode,
  7509  			Header: res.Header,
  7510  		})
  7511  	}
  7512  	if err != nil {
  7513  		return nil, err
  7514  	}
  7515  	defer googleapi.CloseBody(res)
  7516  	if err := googleapi.CheckResponse(res); err != nil {
  7517  		return nil, gensupport.WrapError(err)
  7518  	}
  7519  	ret := &GoogleCloudIdentitytoolkitV1GetSessionCookiePublicKeysResponse{
  7520  		ServerResponse: googleapi.ServerResponse{
  7521  			Header:         res.Header,
  7522  			HTTPStatusCode: res.StatusCode,
  7523  		},
  7524  	}
  7525  	target := &ret
  7526  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7527  		return nil, err
  7528  	}
  7529  	return ret, nil
  7530  }
  7531  

View as plain text