// Type definitions for Google Google Identity Toolkit API v3 3.0 // Project: https://developers.google.com/identity-toolkit/v3/ // Definitions by: Bolisov Alexey // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 // IMPORTANT // This file was generated by https://github.com/Bolisov/google-api-typings-generator. Please do not edit it manually. // In case of any problems please post issue to https://github.com/Bolisov/google-api-typings-generator // Generated from: https://www.googleapis.com/discovery/v1/apis/identitytoolkit/v3/rest /// declare namespace gapi.client { /** Load Google Identity Toolkit API v3 */ function load(name: "identitytoolkit", version: "v3"): PromiseLike; function load(name: "identitytoolkit", version: "v3", callback: () => any): void; const relyingparty: identitytoolkit.RelyingpartyResource; namespace identitytoolkit { interface CreateAuthUriResponse { /** all providers the user has once used to do federated login */ allProviders?: string[]; /** The URI used by the IDP to authenticate the user. */ authUri?: string; /** True if captcha is required. */ captchaRequired?: boolean; /** True if the authUri is for user's existing provider. */ forExistingProvider?: boolean; /** The fixed string identitytoolkit#CreateAuthUriResponse". */ kind?: string; /** The provider ID of the auth URI. */ providerId?: string; /** Whether the user is registered if the identifier is an email. */ registered?: boolean; /** Session ID which should be passed in the following verifyAssertion request. */ sessionId?: string; /** All sign-in methods this user has used. */ signinMethods?: string[]; } interface DeleteAccountResponse { /** The fixed string "identitytoolkit#DeleteAccountResponse". */ kind?: string; } interface DownloadAccountResponse { /** The fixed string "identitytoolkit#DownloadAccountResponse". */ kind?: string; /** The next page token. To be used in a subsequent request to return the next page of results. */ nextPageToken?: string; /** The user accounts data. */ users?: UserInfo[]; } interface EmailLinkSigninResponse { /** The user's email. */ email?: string; /** Expiration time of STS id token in seconds. */ expiresIn?: string; /** The STS id token to login the newly signed in user. */ idToken?: string; /** Whether the user is new. */ isNewUser?: boolean; /** The fixed string "identitytoolkit#EmailLinkSigninResponse". */ kind?: string; /** The RP local ID of the user. */ localId?: string; /** The refresh token for the signed in user. */ refreshToken?: string; } interface EmailTemplate { /** Email body. */ body?: string; /** Email body format. */ format?: string; /** From address of the email. */ from?: string; /** From display name. */ fromDisplayName?: string; /** Reply-to address. */ replyTo?: string; /** Subject of the email. */ subject?: string; } interface GetAccountInfoResponse { /** The fixed string "identitytoolkit#GetAccountInfoResponse". */ kind?: string; /** The info of the users. */ users?: UserInfo[]; } interface GetOobConfirmationCodeResponse { /** The email address that the email is sent to. */ email?: string; /** The fixed string "identitytoolkit#GetOobConfirmationCodeResponse". */ kind?: string; /** The code to be send to the user. */ oobCode?: string; } interface GetRecaptchaParamResponse { /** The fixed string "identitytoolkit#GetRecaptchaParamResponse". */ kind?: string; /** Site key registered at recaptcha. */ recaptchaSiteKey?: string; /** The stoken field for the recaptcha widget, used to request captcha challenge. */ recaptchaStoken?: string; } interface IdentitytoolkitRelyingpartyCreateAuthUriRequest { /** The app ID of the mobile app, base64(CERT_SHA1):PACKAGE_NAME for Android, BUNDLE_ID for iOS. */ appId?: string; /** Explicitly specify the auth flow type. Currently only support "CODE_FLOW" type. The field is only used for Google provider. */ authFlowType?: string; /** The relying party OAuth client ID. */ clientId?: string; /** The opaque value used by the client to maintain context info between the authentication request and the IDP callback. */ context?: string; /** The URI to which the IDP redirects the user after the federated login flow. */ continueUri?: string; /** * The query parameter that client can customize by themselves in auth url. The following parameters are reserved for server so that they cannot be * customized by clients: client_id, response_type, scope, redirect_uri, state, oauth_token. */ customParameter?: Record; /** The hosted domain to restrict sign-in to accounts at that domain for Google Apps hosted accounts. */ hostedDomain?: string; /** The email or federated ID of the user. */ identifier?: string; /** The developer's consumer key for OpenId OAuth Extension */ oauthConsumerKey?: string; /** Additional oauth scopes, beyond the basid user profile, that the user would be prompted to grant */ oauthScope?: string; /** Optional realm for OpenID protocol. The sub string "scheme://domain:port" of the param "continueUri" is used if this is not set. */ openidRealm?: string; /** The native app package for OTA installation. */ otaApp?: string; /** * The IdP ID. For white listed IdPs it's a short domain name e.g. google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP * identifier. */ providerId?: string; /** The session_id passed by client. */ sessionId?: string; } interface IdentitytoolkitRelyingpartyDeleteAccountRequest { /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; /** The GITKit token or STS id token of the authenticated user. */ idToken?: string; /** The local ID of the user. */ localId?: string; } interface IdentitytoolkitRelyingpartyDownloadAccountRequest { /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; /** The max number of results to return in the response. */ maxResults?: number; /** The token for the next page. This should be taken from the previous response. */ nextPageToken?: string; /** Specify which project (field value is actually project id) to operate. Only used when provided credential. */ targetProjectId?: string; } interface IdentitytoolkitRelyingpartyEmailLinkSigninRequest { /** The email address of the user. */ email?: string; /** Token for linking flow. */ idToken?: string; /** The confirmation code. */ oobCode?: string; } interface IdentitytoolkitRelyingpartyGetAccountInfoRequest { /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; /** The list of emails of the users to inquiry. */ email?: string[]; /** The GITKit token of the authenticated user. */ idToken?: string; /** The list of local ID's of the users to inquiry. */ localId?: string[]; /** Privileged caller can query users by specified phone number. */ phoneNumber?: string[]; } interface IdentitytoolkitRelyingpartyGetProjectConfigResponse { /** Whether to allow password user sign in or sign up. */ allowPasswordUser?: boolean; /** Browser API key, needed when making http request to Apiary. */ apiKey?: string; /** Authorized domains. */ authorizedDomains?: string[]; /** Change email template. */ changeEmailTemplate?: EmailTemplate; dynamicLinksDomain?: string; /** Whether anonymous user is enabled. */ enableAnonymousUser?: boolean; /** OAuth2 provider configuration. */ idpConfig?: IdpConfig[]; /** Legacy reset password email template. */ legacyResetPasswordTemplate?: EmailTemplate; /** Project ID of the relying party. */ projectId?: string; /** Reset password email template. */ resetPasswordTemplate?: EmailTemplate; /** Whether to use email sending provided by Firebear. */ useEmailSending?: boolean; /** Verify email template. */ verifyEmailTemplate?: EmailTemplate; } interface IdentitytoolkitRelyingpartyGetPublicKeysResponse { [key: string]: string; } interface IdentitytoolkitRelyingpartyResetPasswordRequest { /** The email address of the user. */ email?: string; /** The new password inputted by the user. */ newPassword?: string; /** The old password inputted by the user. */ oldPassword?: string; /** The confirmation code. */ oobCode?: string; } interface IdentitytoolkitRelyingpartySendVerificationCodeRequest { /** Receipt of successful app token validation with APNS. */ iosReceipt?: string; /** Secret delivered to iOS app via APNS. */ iosSecret?: string; /** The phone number to send the verification code to in E.164 format. */ phoneNumber?: string; /** Recaptcha solution. */ recaptchaToken?: string; } interface IdentitytoolkitRelyingpartySendVerificationCodeResponse { /** Encrypted session information */ sessionInfo?: string; } interface IdentitytoolkitRelyingpartySetAccountInfoRequest { /** The captcha challenge. */ captchaChallenge?: string; /** Response to the captcha. */ captchaResponse?: string; /** The timestamp when the account is created. */ createdAt?: string; /** The custom attributes to be set in the user's id token. */ customAttributes?: string; /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; /** The attributes users request to delete. */ deleteAttribute?: string[]; /** The IDPs the user request to delete. */ deleteProvider?: string[]; /** Whether to disable the user. */ disableUser?: boolean; /** The name of the user. */ displayName?: string; /** The email of the user. */ email?: string; /** Mark the email as verified or not. */ emailVerified?: boolean; /** The GITKit token of the authenticated user. */ idToken?: string; /** Instance id token of the app. */ instanceId?: string; /** Last login timestamp. */ lastLoginAt?: string; /** The local ID of the user. */ localId?: string; /** The out-of-band code of the change email request. */ oobCode?: string; /** The new password of the user. */ password?: string; /** Privileged caller can update user with specified phone number. */ phoneNumber?: string; /** The photo url of the user. */ photoUrl?: string; /** The associated IDPs of the user. */ provider?: string[]; /** Whether return sts id token and refresh token instead of gitkit token. */ returnSecureToken?: boolean; /** Mark the user to upgrade to federated login. */ upgradeToFederatedLogin?: boolean; /** Timestamp in seconds for valid login token. */ validSince?: string; } interface IdentitytoolkitRelyingpartySetProjectConfigRequest { /** Whether to allow password user sign in or sign up. */ allowPasswordUser?: boolean; /** Browser API key, needed when making http request to Apiary. */ apiKey?: string; /** Authorized domains for widget redirect. */ authorizedDomains?: string[]; /** Change email template. */ changeEmailTemplate?: EmailTemplate; /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; /** Whether to enable anonymous user. */ enableAnonymousUser?: boolean; /** Oauth2 provider configuration. */ idpConfig?: IdpConfig[]; /** Legacy reset password email template. */ legacyResetPasswordTemplate?: EmailTemplate; /** Reset password email template. */ resetPasswordTemplate?: EmailTemplate; /** Whether to use email sending provided by Firebear. */ useEmailSending?: boolean; /** Verify email template. */ verifyEmailTemplate?: EmailTemplate; } interface IdentitytoolkitRelyingpartySetProjectConfigResponse { /** Project ID of the relying party. */ projectId?: string; } interface IdentitytoolkitRelyingpartySignOutUserRequest { /** Instance id token of the app. */ instanceId?: string; /** The local ID of the user. */ localId?: string; } interface IdentitytoolkitRelyingpartySignOutUserResponse { /** The local ID of the user. */ localId?: string; } interface IdentitytoolkitRelyingpartySignupNewUserRequest { /** The captcha challenge. */ captchaChallenge?: string; /** Response to the captcha. */ captchaResponse?: string; /** Whether to disable the user. Only can be used by service account. */ disabled?: boolean; /** The name of the user. */ displayName?: string; /** The email of the user. */ email?: string; /** Mark the email as verified or not. Only can be used by service account. */ emailVerified?: boolean; /** The GITKit token of the authenticated user. */ idToken?: string; /** Instance id token of the app. */ instanceId?: string; /** Privileged caller can create user with specified user id. */ localId?: string; /** The new password of the user. */ password?: string; /** Privileged caller can create user with specified phone number. */ phoneNumber?: string; /** The photo url of the user. */ photoUrl?: string; } interface IdentitytoolkitRelyingpartyUploadAccountRequest { /** Whether allow overwrite existing account when user local_id exists. */ allowOverwrite?: boolean; blockSize?: number; /** The following 4 fields are for standard scrypt algorithm. */ cpuMemCost?: number; /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; dkLen?: number; /** The password hash algorithm. */ hashAlgorithm?: string; /** Memory cost for hash calculation. Used by scrypt similar algorithms. */ memoryCost?: number; parallelization?: number; /** Rounds for hash calculation. Used by scrypt and similar algorithms. */ rounds?: number; /** The salt separator. */ saltSeparator?: string; /** If true, backend will do sanity check(including duplicate email and federated id) when uploading account. */ sanityCheck?: boolean; /** The key for to hash the password. */ signerKey?: string; /** Specify which project (field value is actually project id) to operate. Only used when provided credential. */ targetProjectId?: string; /** The account info to be stored. */ users?: UserInfo[]; } interface IdentitytoolkitRelyingpartyVerifyAssertionRequest { /** * When it's true, automatically creates a new account if the user doesn't exist. When it's false, allows existing user to sign in normally and throws * exception if the user doesn't exist. */ autoCreate?: boolean; /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; /** The GITKit token of the authenticated user. */ idToken?: string; /** Instance id token of the app. */ instanceId?: string; /** The GITKit token for the non-trusted IDP pending to be confirmed by the user. */ pendingIdToken?: string; /** The post body if the request is a HTTP POST. */ postBody?: string; /** The URI to which the IDP redirects the user back. It may contain federated login result params added by the IDP. */ requestUri?: string; /** Whether return 200 and IDP credential rather than throw exception when federated id is already linked. */ returnIdpCredential?: boolean; /** Whether to return refresh tokens. */ returnRefreshToken?: boolean; /** Whether return sts id token and refresh token instead of gitkit token. */ returnSecureToken?: boolean; /** Session ID, which should match the one in previous createAuthUri request. */ sessionId?: string; } interface IdentitytoolkitRelyingpartyVerifyCustomTokenRequest { /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; /** Instance id token of the app. */ instanceId?: string; /** Whether return sts id token and refresh token instead of gitkit token. */ returnSecureToken?: boolean; /** The custom token to verify */ token?: string; } interface IdentitytoolkitRelyingpartyVerifyPasswordRequest { /** The captcha challenge. */ captchaChallenge?: string; /** Response to the captcha. */ captchaResponse?: string; /** GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration. */ delegatedProjectNumber?: string; /** The email of the user. */ email?: string; /** The GITKit token of the authenticated user. */ idToken?: string; /** Instance id token of the app. */ instanceId?: string; /** The password inputed by the user. */ password?: string; /** The GITKit token for the non-trusted IDP, which is to be confirmed by the user. */ pendingIdToken?: string; /** Whether return sts id token and refresh token instead of gitkit token. */ returnSecureToken?: boolean; } interface IdentitytoolkitRelyingpartyVerifyPhoneNumberRequest { code?: string; idToken?: string; operation?: string; phoneNumber?: string; /** The session info previously returned by IdentityToolkit-SendVerificationCode. */ sessionInfo?: string; temporaryProof?: string; verificationProof?: string; } interface IdentitytoolkitRelyingpartyVerifyPhoneNumberResponse { expiresIn?: string; idToken?: string; isNewUser?: boolean; localId?: string; phoneNumber?: string; refreshToken?: string; temporaryProof?: string; temporaryProofExpiresIn?: string; verificationProof?: string; verificationProofExpiresIn?: string; } interface IdpConfig { /** OAuth2 client ID. */ clientId?: string; /** Whether this IDP is enabled. */ enabled?: boolean; /** Percent of users who will be prompted/redirected federated login for this IDP. */ experimentPercent?: number; /** OAuth2 provider. */ provider?: string; /** OAuth2 client secret. */ secret?: string; /** Whitelisted client IDs for audience check. */ whitelistedAudiences?: string[]; } interface Relyingparty { /** whether or not to install the android app on the device where the link is opened */ androidInstallApp?: boolean; /** minimum version of the app. if the version on the device is lower than this version then the user is taken to the play store to upgrade the app */ androidMinimumVersion?: string; /** android package name of the android app to handle the action code */ androidPackageName?: string; /** whether or not the app can handle the oob code without first going to web */ canHandleCodeInApp?: boolean; /** The recaptcha response from the user. */ captchaResp?: string; /** The recaptcha challenge presented to the user. */ challenge?: string; /** The url to continue to the Gitkit app */ continueUrl?: string; /** The email of the user. */ email?: string; /** iOS app store id to download the app if it's not already installed */ iOSAppStoreId?: string; /** the iOS bundle id of iOS app to handle the action code */ iOSBundleId?: string; /** The user's Gitkit login token for email change. */ idToken?: string; /** The fixed string "identitytoolkit#relyingparty". */ kind?: string; /** The new email if the code is for email change. */ newEmail?: string; /** The request type. */ requestType?: string; /** The IP address of the user. */ userIp?: string; } interface ResetPasswordResponse { /** The user's email. If the out-of-band code is for email recovery, the user's original email. */ email?: string; /** The fixed string "identitytoolkit#ResetPasswordResponse". */ kind?: string; /** If the out-of-band code is for email recovery, the user's new email. */ newEmail?: string; /** The request type. */ requestType?: string; } interface SetAccountInfoResponse { /** The name of the user. */ displayName?: string; /** The email of the user. */ email?: string; /** If email has been verified. */ emailVerified?: boolean; /** If idToken is STS id token, then this field will be expiration time of STS id token in seconds. */ expiresIn?: string; /** The Gitkit id token to login the newly sign up user. */ idToken?: string; /** The fixed string "identitytoolkit#SetAccountInfoResponse". */ kind?: string; /** The local ID of the user. */ localId?: string; /** The new email the user attempts to change to. */ newEmail?: string; /** The user's hashed password. */ passwordHash?: string; /** The photo url of the user. */ photoUrl?: string; /** The user's profiles at the associated IdPs. */ providerUserInfo?: Array<{ /** The user's display name at the IDP. */ displayName?: string; /** User's identifier at IDP. */ federatedId?: string; /** The user's photo url at the IDP. */ photoUrl?: string; /** * The IdP ID. For whitelisted IdPs it's a short domain name, e.g., google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP * identifier. */ providerId?: string; }>; /** If idToken is STS id token, then this field will be refresh token. */ refreshToken?: string; } interface SignupNewUserResponse { /** The name of the user. */ displayName?: string; /** The email of the user. */ email?: string; /** If idToken is STS id token, then this field will be expiration time of STS id token in seconds. */ expiresIn?: string; /** The Gitkit id token to login the newly sign up user. */ idToken?: string; /** The fixed string "identitytoolkit#SignupNewUserResponse". */ kind?: string; /** The RP local ID of the user. */ localId?: string; /** If idToken is STS id token, then this field will be refresh token. */ refreshToken?: string; } interface UploadAccountResponse { /** The error encountered while processing the account info. */ error?: Array<{ /** The index of the malformed account, starting from 0. */ index?: number; /** Detailed error message for the account info. */ message?: string; }>; /** The fixed string "identitytoolkit#UploadAccountResponse". */ kind?: string; } interface UserInfo { /** User creation timestamp. */ createdAt?: string; /** The custom attributes to be set in the user's id token. */ customAttributes?: string; /** Whether the user is authenticated by the developer. */ customAuth?: boolean; /** Whether the user is disabled. */ disabled?: boolean; /** The name of the user. */ displayName?: string; /** The email of the user. */ email?: string; /** Whether the email has been verified. */ emailVerified?: boolean; /** last login timestamp. */ lastLoginAt?: string; /** The local ID of the user. */ localId?: string; /** The user's hashed password. */ passwordHash?: string; /** The timestamp when the password was last updated. */ passwordUpdatedAt?: number; /** User's phone number. */ phoneNumber?: string; /** The URL of the user profile photo. */ photoUrl?: string; /** The IDP of the user. */ providerUserInfo?: Array<{ /** The user's display name at the IDP. */ displayName?: string; /** User's email at IDP. */ email?: string; /** User's identifier at IDP. */ federatedId?: string; /** User's phone number. */ phoneNumber?: string; /** The user's photo url at the IDP. */ photoUrl?: string; /** * The IdP ID. For white listed IdPs it's a short domain name, e.g., google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP * identifier. */ providerId?: string; /** User's raw identifier directly returned from IDP. */ rawId?: string; /** User's screen name at Twitter or login name at Github. */ screenName?: string; }>; /** The user's plain text password. */ rawPassword?: string; /** The user's password salt. */ salt?: string; /** User's screen name at Twitter or login name at Github. */ screenName?: string; /** Timestamp in seconds for valid login token. */ validSince?: string; /** Version of the user's password. */ version?: number; } interface VerifyAssertionResponse { /** The action code. */ action?: string; /** URL for OTA app installation. */ appInstallationUrl?: string; /** The custom scheme used by mobile app. */ appScheme?: string; /** The opaque value used by the client to maintain context info between the authentication request and the IDP callback. */ context?: string; /** The birth date of the IdP account. */ dateOfBirth?: string; /** The display name of the user. */ displayName?: string; /** The email returned by the IdP. NOTE: The federated login user may not own the email. */ email?: string; /** It's true if the email is recycled. */ emailRecycled?: boolean; /** The value is true if the IDP is also the email provider. It means the user owns the email. */ emailVerified?: boolean; /** Client error code. */ errorMessage?: string; /** If idToken is STS id token, then this field will be expiration time of STS id token in seconds. */ expiresIn?: string; /** The unique ID identifies the IdP account. */ federatedId?: string; /** The first name of the user. */ firstName?: string; /** The full name of the user. */ fullName?: string; /** The ID token. */ idToken?: string; /** * It's the identifier param in the createAuthUri request if the identifier is an email. It can be used to check whether the user input email is different * from the asserted email. */ inputEmail?: string; /** True if it's a new user sign-in, false if it's a returning user. */ isNewUser?: boolean; /** The fixed string "identitytoolkit#VerifyAssertionResponse". */ kind?: string; /** The language preference of the user. */ language?: string; /** The last name of the user. */ lastName?: string; /** The RP local ID if it's already been mapped to the IdP account identified by the federated ID. */ localId?: string; /** Whether the assertion is from a non-trusted IDP and need account linking confirmation. */ needConfirmation?: boolean; /** Whether need client to supply email to complete the federated login flow. */ needEmail?: boolean; /** The nick name of the user. */ nickName?: string; /** The OAuth2 access token. */ oauthAccessToken?: string; /** The OAuth2 authorization code. */ oauthAuthorizationCode?: string; /** The lifetime in seconds of the OAuth2 access token. */ oauthExpireIn?: number; /** The OIDC id token. */ oauthIdToken?: string; /** The user approved request token for the OpenID OAuth extension. */ oauthRequestToken?: string; /** The scope for the OpenID OAuth extension. */ oauthScope?: string; /** The OAuth1 access token secret. */ oauthTokenSecret?: string; /** The original email stored in the mapping storage. It's returned when the federated ID is associated to a different email. */ originalEmail?: string; /** The URI of the public accessible profiel picture. */ photoUrl?: string; /** * The IdP ID. For white listed IdPs it's a short domain name e.g. google.com, aol.com, live.net and yahoo.com. If the "providerId" param is set to OpenID * OP identifer other than the whilte listed IdPs the OP identifier is returned. If the "identifier" param is federated ID in the createAuthUri request. * The domain part of the federated ID is returned. */ providerId?: string; /** Raw IDP-returned user info. */ rawUserInfo?: string; /** If idToken is STS id token, then this field will be refresh token. */ refreshToken?: string; /** The screen_name of a Twitter user or the login name at Github. */ screenName?: string; /** The timezone of the user. */ timeZone?: string; /** When action is 'map', contains the idps which can be used for confirmation. */ verifiedProvider?: string[]; } interface VerifyCustomTokenResponse { /** If idToken is STS id token, then this field will be expiration time of STS id token in seconds. */ expiresIn?: string; /** The GITKit token for authenticated user. */ idToken?: string; /** True if it's a new user sign-in, false if it's a returning user. */ isNewUser?: boolean; /** The fixed string "identitytoolkit#VerifyCustomTokenResponse". */ kind?: string; /** If idToken is STS id token, then this field will be refresh token. */ refreshToken?: string; } interface VerifyPasswordResponse { /** The name of the user. */ displayName?: string; /** The email returned by the IdP. NOTE: The federated login user may not own the email. */ email?: string; /** If idToken is STS id token, then this field will be expiration time of STS id token in seconds. */ expiresIn?: string; /** The GITKit token for authenticated user. */ idToken?: string; /** The fixed string "identitytoolkit#VerifyPasswordResponse". */ kind?: string; /** The RP local ID if it's already been mapped to the IdP account identified by the federated ID. */ localId?: string; /** The OAuth2 access token. */ oauthAccessToken?: string; /** The OAuth2 authorization code. */ oauthAuthorizationCode?: string; /** The lifetime in seconds of the OAuth2 access token. */ oauthExpireIn?: number; /** The URI of the user's photo at IdP */ photoUrl?: string; /** If idToken is STS id token, then this field will be refresh token. */ refreshToken?: string; /** Whether the email is registered. */ registered?: boolean; } interface RelyingpartyResource { /** Creates the URI used by the IdP to authenticate the user. */ createAuthUri(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Delete user account. */ deleteAccount(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Batch download user accounts. */ downloadAccount(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Reset password for a user. */ emailLinkSignin(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Returns the account info. */ getAccountInfo(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Get a code for user action confirmation. */ getOobConfirmationCode(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Get project configuration. */ getProjectConfig(request: { /** Data format for the response. */ alt?: string; /** Delegated GCP project number of the request. */ delegatedProjectNumber?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** GCP project number of the request. */ projectNumber?: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Get token signing public key. */ getPublicKeys(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request<{}>; /** Get recaptcha secure param. */ getRecaptchaParam(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Reset password for a user. */ resetPassword(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Send SMS verification code. */ sendVerificationCode(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Set account info for a user. */ setAccountInfo(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Set project configuration. */ setProjectConfig(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Sign out user. */ signOutUser(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Signup new user. */ signupNewUser(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Batch upload existing user accounts. */ uploadAccount(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Verifies the assertion returned by the IdP. */ verifyAssertion(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Verifies the developer asserted ID token. */ verifyCustomToken(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Verifies the user entered password. */ verifyPassword(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Verifies ownership of a phone number and creates/updates the user account accordingly. */ verifyPhoneNumber(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; } } }