Radical
Reference

Google sign-in API

Native identity tokens and browser service injection.

Native enablement is internalPlugins.googleSignIn. The dependency is @capawesome/capacitor-google-sign-in@0.1.4.

ConfigurationContract
pluginOptions.GoogleSignInValidated by GoogleSignInConfigSchema
webClientId, iosClientIdLetters, digits, underscores, or hyphens, then .apps.googleusercontent.com
GenerationRuntime config; iOS client identifier and reversed URL scheme

googleSignIn is an Effect of GoogleIdentity, requiring Bridge | BrowserGoogleSignIn | GoogleSignInConfiguration. GoogleIdentitySchema validates { idToken: nonempty string }.

ServiceContract
googleSignInLive(effect)Provides BrowserGoogleSignInLive and GoogleSignInConfigurationLive
Native initializationUses webClientId before sign-in
Browser replacementInjectable BrowserGoogleSignIn for an app-owned OAuth flow

Typed errors

GoogleSignInError is BridgeError | GoogleSignInCancelled | GoogleSignInMisconfigured | GoogleSignInUnavailable.

ErrorMeaning
GoogleSignInCancelledNative sign-in rejects with SIGN_IN_CANCELED.
GoogleSignInMisconfiguredMissing runtime config, initialization failure, or PROVIDER_CONFIGURATION_ERROR. Carries cause.
GoogleSignInUnavailableThe default browser service cannot sign in.
BridgeCallFailedOther native rejection.
BridgeDecodeErrorInvalid native identity result.

useGoogleSignIn() exposes signIn(), cancel(), loading state, value.idToken, and error. Interrupting the Effect does not provide a native sign-out API. Radical does not verify tokens or create an application session.

Platform support

CapabilityAndroidiOSBrowser
Sign-inNative identity tokenNative identity tokenDefault service fails with GoogleSignInUnavailable
Token verification and sessionApp-owned backendApp-owned backendApp-owned backend

Source: Google sign-in implementation.

On this page