FirebaseAuth Framework Reference Stay organized with collections Save and categorize content based on your preferences.
Classes
The following classes are available globally.
Manages information regarding action codes.
Declaration
Swift
@objc(FIRActionCodeInfo)openclassActionCodeInfo:NSObject,@uncheckedSendableUsed to set and retrieve settings related to handling action codes.
Declaration
Swift
@objc(FIRActionCodeSettings)openclassActionCodeSettings:NSObject,@uncheckedSendableThis class will allow developers to easily extract information about out of band links.
Declaration
Swift
@objc(FIRActionCodeURL)openclassActionCodeURL:NSObject,@uncheckedSendableManages authentication for Firebase apps.
This class is thread-safe.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@preconcurrency@objc(FIRAuth)openclassAuth:NSObjectextensionAuth:UISceneDelegateextensionAuth:UIApplicationDelegateextensionAuth:AuthInteropHelper object that contains the result of a successful sign-in, link and reauthenticateaction.
It contains references to a
Userinstance and anAdditionalUserInfoinstance.Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRAuthDataResult)openclassAuthDataResult:NSObjectextensionAuthDataResult:NSSecureCodingDetermines settings related to an auth object.
Declaration
Swift
@objc(FIRAuthSettings)openclassAuthSettings:NSObject,NSCopyingA data class containing the ID token JWT string and other properties associated with thetoken including the decoded payload claims.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRAuthTokenResult)openclassAuthTokenResult:NSObjectextensionAuthTokenResult:NSSecureCodingPublic representation of a credential.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRAuthCredential)openclassAuthCredential:NSObject,@uncheckedSendableA concrete implementation of
AuthProviderfor Email & Password Sign In.Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIREmailAuthProvider)openclassEmailAuthProvider:NSObjectUtility class for constructing Facebook Sign In credentials.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRFacebookAuthProvider)openclassFacebookAuthProvider:NSObjectA concrete implementation of
AuthProviderfor Game Center Sign In. Not available on watchOS.Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRGameCenterAuthProvider)openclassGameCenterAuthProvider:NSObjectUtility class for constructing GitHub Sign In credentials.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRGitHubAuthProvider)openclassGitHubAuthProvider:NSObjectUtility class for constructing Google Sign In credentials.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRGoogleAuthProvider)openclassGoogleAuthProvider:NSObjectInternal implementation of
AuthCredentialfor generic credentials.Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIROAuthCredential)openclassOAuthCredential:AuthCredential,NSSecureCoding,@uncheckedSendableUtility class for constructing OAuth Sign In credentials.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIROAuthProvider)openclassOAuthProvider:NSObject,FederatedAuthProviderImplementation of AuthCredential for Phone Auth credentials.
This class is available on iOS only.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRPhoneAuthCredential)openclassPhoneAuthCredential:AuthCredential,NSSecureCoding,@uncheckedSendableA concrete implementation of
AuthProviderfor phone auth providers.This class is available on iOS only.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRPhoneAuthProvider)openclassPhoneAuthProvider:NSObject,@uncheckedSendableUtility class for constructing Twitter Sign In credentials.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRTwitterAuthProvider)openclassTwitterAuthProvider:NSObjectThe interface defining the multi factor related properties and operations pertaining to auser.
This class is available on iOS and macOS.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRMultiFactor)openclassMultiFactor:NSObjectextensionMultiFactor:NSSecureCodingThe base class for asserting ownership of a second factor. This is equivalent to the AuthCredential class.
This class is available on iOS and macOS.
Declaration
Swift
@objc(FIRMultiFactorAssertion)openclassMultiFactorAssertion:NSObjectSafe public structure used to represent a second factor entity from a client perspective.
This class is available on iOS and macOS.
Declaration
Swift
@objc(FIRMultiFactorInfo)openclassMultiFactorInfo:NSObject,@uncheckedSendableextensionMultiFactorInfo:NSSecureCodingThe subclass of base class
MultiFactorAssertion, used to assert ownership of a phonesecond factor.This class is available on iOS and macOS.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRMultiFactorResolver)openclassMultiFactorResolver:NSObjectOpaque object that identifies the current session to enroll a second factor or tocomplete sign in when previously enrolled.
Identifies the current session to enroll a second factoror to complete sign in when previously enrolled. It contains additional context on theexisting user, notably the confirmation that the user passed the first factor challenge.
This class is available on iOS and macOS.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRMultiFactorSession)openclassMultiFactorSession:NSObjectThe subclass of base class FIRMultiFactorAssertion, used to assert ownership of a phonesecond factor.
This class is available on iOS and macOS.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRPhoneMultiFactorAssertion)openclassPhoneMultiFactorAssertion:MultiFactorAssertionThe data structure used to help initialize an assertion for a second factor entity to theFirebase Auth/CICP server.
Depending on the type of second factor, this will help generate the assertion.
This class is available on iOS and macOS.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRPhoneMultiFactorGenerator)openclassPhoneMultiFactorGenerator:NSObjectExtends the MultiFactorInfo class for phone number second factors.
The identifier of this second factor is “phone”.
This class is available on iOS and macOS.
Declaration
Swift
@objc(FIRPhoneMultiFactorInfo)openclassPhoneMultiFactorInfo:MultiFactorInfo,@uncheckedSendableThe subclass of base class MultiFactorAssertion, used to assert ownership of a TOTP(Time-based One Time Password) second factor.
This class is available on iOS and macOS.
Declaration
Swift
@objc(FIRTOTPMultiFactorAssertion)openclassTOTPMultiFactorAssertion:MultiFactorAssertionThe data structure used to help initialize an assertion for a second factor entity to theFirebase Auth/CICP server. Depending on the type of second factor, this will help generatethe assertion.
This class is available on iOS and macOS.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRTOTPMultiFactorGenerator)openclassTOTPMultiFactorGenerator:NSObjectThe subclass of base class MultiFactorAssertion, used to assert ownership of a TOTP(Time-based One Time Password) second factor.
This class is available on iOS and macOS.
Declaration
Swift
@objc(FIRTOTPSecret)openclassTOTPSecret:NSObjectUndocumented
Declaration
Swift
@objc(FIRAdditionalUserInfo)openclassAdditionalUserInfo:NSObjectextensionAdditionalUserInfo:NSSecureCodingRepresents a user.
Firebase Auth does not attempt to validate userswhen loading them from the keychain. Invalidated users (such as thosewhose passwords have been changed on another client) are automaticallylogged out when an auth-dependent operation is attempted or when theID token is automatically refreshed.
This class is thread-safe.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRUser)openclassUser:NSObject,UserInfoextensionUser:NSSecureCodingA data class representing the metadata corresponding to a Firebase user.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRUserMetadata)openclassUserMetadata:NSObjectextensionUserMetadata:NSSecureCodingRepresents an object capable of updating a user’s profile data.
Properties are marked as being part of a profile update when they are set. Setting aproperty value to nil is not the same as leaving the property unassigned.
Declaration
Swift
@available(iOS13,tvOS13,macOS10.15,watchOS7,*)@objc(FIRUserProfileChangeRequest)openclassUserProfileChangeRequest:NSObjectError Codes common to all API Methods:
Declaration
Swift
@objc(FIRAuthErrors)openclassAuthErrors:NSObject
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-27 UTC.