Getting Started
Copy a setup prompt with the install steps and the full markdown guide for this plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-firebase-app-check`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/firebase-app-check/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Install
Section titled “Install”bun add @capgo/capacitor-firebase-app-checkbunx cap syncImport
Section titled “Import”import { FirebaseAppCheck } from '@capgo/capacitor-firebase-app-check';API Overview
Section titled “API Overview”getToken
Section titled “getToken”Get the current App Check token.
import { FirebaseAppCheck } from '@capgo/capacitor-firebase-app-check';
await FirebaseAppCheck.getToken();initialize
Section titled “initialize”Activate App Check for the given app. Can be called only once per app.
import { FirebaseAppCheck } from '@capgo/capacitor-firebase-app-check';
await FirebaseAppCheck.initialize();setTokenAutoRefreshEnabled
Section titled “setTokenAutoRefreshEnabled”Set whether the App Check token should be refreshed automatically or not.
import { FirebaseAppCheck } from '@capgo/capacitor-firebase-app-check';
await FirebaseAppCheck.setTokenAutoRefreshEnabled({} as SetTokenAutoRefreshEnabledOptions);Type Reference
Section titled “Type Reference”GetTokenOptions
Section titled “GetTokenOptions”export interface GetTokenOptions { /** * If `true`, will always try to fetch a fresh token. * If `false`, will use a cached token if found in storage. * * @since 1.3.0 * @default false */ forceRefresh?: boolean;}GetTokenResult
Section titled “GetTokenResult”export interface GetTokenResult { /** * The App Check token in JWT format. * * @since 1.3.0 */ token: string; /** * The timestamp after which the token will expire in milliseconds since epoch. * * Only available for Android and iOS. * * @since 1.3.0 */ expireTimeMillis?: number;}InitializeOptions
Section titled “InitializeOptions”export interface InitializeOptions { /** * If `true`, the debug provider is used. * * ⚠️ **Attention**: The debug provider allows access to your Firebase resources from unverified devices. * Don't use the debug provider in production builds of your app, and don't share your debug builds with untrusted parties. * * ⚠️ **Deprecated**: Use `debugToken` instead. This option will be removed in the next major version. * * Read more: https://firebase.google.com/docs/app-check/web/debug-provider * * @since 1.3.0 * @deprecated Use `debugToken` instead. This option will be removed in the next major version. * @default false */ debug?: boolean; /** * If `true`, the debug provider is used. * * On **Web**, you can also set a predefined debug token string instead of `true`. On Android and iOS, you have to use environment variables for this. * * ⚠️ **Attention**: The debug provider allows access to your Firebase resources from unverified devices. * Don't use the debug provider in production builds of your app, and don't share your debug builds with untrusted parties. * * @since 7.1.0 * @default false * @see https://firebase.google.com/docs/app-check/android/debug-provider#ci * @see https://firebase.google.com/docs/app-check/ios/debug-provider#ci * @see https://firebase.google.com/docs/app-check/web/debug-provider */ debugToken?: boolean | string; /** * If `true`, the SDK automatically refreshes App Check tokens as needed. * * @since 1.3.0 * @default false */ isTokenAutoRefreshEnabled?: boolean; /** * The provider to use for App Check. Must be an instance of * `ReCaptchaV3Provider`, `ReCaptchaEnterpriseProvider`, or `CustomProvider`. * * Only available for Web. * * @since 7.1.0 * @default ReCaptchaV3Provider * @see https://firebase.google.com/docs/app-check/web/custom-provider */ provider?: any; /** * The reCAPTCHA v3 site key (public key). This option is ignored when `provider` is set. * * Only available for Web. * * @deprecated Use `provider` instead. * @since 1.3.0 */ siteKey?: string;}SetTokenAutoRefreshEnabledOptions
Section titled “SetTokenAutoRefreshEnabledOptions”export interface SetTokenAutoRefreshEnabledOptions { /** * If `true`, the SDK automatically refreshes App Check tokens as needed. * This overrides any value set during initializeAppCheck(). * * @since 1.3.0 */ enabled: boolean;}TokenChangedListener
Section titled “TokenChangedListener”Callback to receive the token change event.
export type TokenChangedListener = (event: TokenChangedEvent) => void;GetPluginVersionResult
Section titled “GetPluginVersionResult”export interface GetPluginVersionResult { /** * The semantic version of this plugin. * * @since 8.0.1 */ version: string;}TokenChangedEvent
Section titled “TokenChangedEvent”export interface TokenChangedEvent { /** * The App Check token in JWT format. * * @since 1.3.0 */ token: string;}Source Of Truth
Section titled “Source Of Truth”This page is generated from the plugin’s src/definitions.ts. Re-run the sync when the public API changes upstream.