Skip to content

Getting Started

Terminal window
bun add @capgo/capacitor-firebase-analytics
bunx cap sync
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';

Retrieves the app instance id.

Only available for Android and iOS.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.getAppInstanceId();

Retrieves the current session id (ga_session_id).

Only available for Android and iOS.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.getSessionId();

Sets the user’s consent mode.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setConsent({} as SetConsentOptions);

Sets the user ID property.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setUserId({} as SetUserIdOptions);

Sets a custom user property to a given value.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setUserProperty({} as SetUserPropertyOptions);

Sets the current screen name.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setCurrentScreen({} as SetCurrentScreenOptions);

Logs an app event.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.logEvent({} as LogEventOptions);

Sets the duration of inactivity that terminates the current session.

Only available for Android and iOS.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setSessionTimeoutDuration({} as SetSessionTimeoutDurationOptions);

Enables/disables automatic data collection. The value does not apply until the next run of the app.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setEnabled({} as SetEnabledOptions);

Returns whether or not automatic data collection is enabled.

Only available for Web.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.isEnabled();

Clears all analytics data for this app from the device. Resets the app instance id.

Only available for Android and iOS.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.resetAnalyticsData();

Initiates on-device conversion measurement with an email address.

Only available for iOS.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithEmailAddress({} as InitiateOnDeviceConversionMeasurementWithEmailAddressOptions);

Initiates on-device conversion measurement with a phone number.

Only available for iOS.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithPhoneNumber({} as InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions);

initiateOnDeviceConversionMeasurementWithHashedEmailAddress

Section titled “initiateOnDeviceConversionMeasurementWithHashedEmailAddress”

Initiates on-device conversion measurement with a hashed email address.

Only available for iOS.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithHashedEmailAddress({} as InitiateOnDeviceConversionMeasurementWithHashedEmailAddressOptions);

initiateOnDeviceConversionMeasurementWithHashedPhoneNumber

Section titled “initiateOnDeviceConversionMeasurementWithHashedPhoneNumber”

Initiates on-device conversion measurement with a hashed phone number.

Only available for iOS.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithHashedPhoneNumber({} as InitiateOnDeviceConversionMeasurementWithHashedPhoneNumberOptions);
export interface GetAppInstanceIdResult {
/**
* The app instance id.
*
* Not defined if `FirebaseAnalytics.ConsentType.ANALYTICS_STORAGE` has been set to `FirebaseAnalytics.ConsentStatus.DENIED`.
*
* @since 1.4.0
*/
appInstanceId?: string;
}
export interface GetSessionIdResult {
/**
* The current session id.
*
* Matches Firebase Analytics `ga_session_id`.
*
* Not defined if `FirebaseAnalytics.ConsentType.ANALYTICS_STORAGE` has been set to `FirebaseAnalytics.ConsentStatus.DENIED`.
*
* @since 8.0.1
*/
sessionId?: number;
}
export interface SetConsentOptions {
/**
* The consent type.
*
* @since 6.0.0
*/
type: ConsentType;
/**
* The consent status.
*
* @since 6.0.0
*/
status: ConsentStatus;
}
export interface SetUserIdOptions {
/**
* @since 0.1.0
*/
userId: string | null;
}
export interface SetUserPropertyOptions {
/**
* @since 0.1.0
*/
key: string;
/**
* @since 0.1.0
*/
value: string | null;
}
export interface SetCurrentScreenOptions {
/**
* @since 0.1.0
*/
screenName: string | null;
/**
* Only available for Android and iOS.
*
* @default null
* @since 0.1.0
*/
screenClassOverride?: string | null;
}
export interface LogEventOptions {
/**
* The event name.
*
* @since 0.1.0
*/
name: string;
/**
* The optional event params.
*
* @since 0.1.0
*/
params?: { [key: string]: any };
}
export interface SetSessionTimeoutDurationOptions {
/**
* Duration in seconds.
*
* @default 1800
* @since 0.1.0
*/
duration: number;
}
export interface SetEnabledOptions {
/**
* @since 0.1.0
*/
enabled: boolean;
}
export interface IsEnabledResult {
/**
* @since 0.1.0
*/
enabled: boolean;
}

InitiateOnDeviceConversionMeasurementWithEmailAddressOptions

Section titled “InitiateOnDeviceConversionMeasurementWithEmailAddressOptions”
export interface InitiateOnDeviceConversionMeasurementWithEmailAddressOptions {
/**
* The email address to initiate on-device conversion measurement with.
*
* @since 7.2.0
*/
emailAddress: string;
}

InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions

Section titled “InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions”
export interface InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions {
/**
* The phone number to initiate on-device conversion measurement with.
*
* @since 7.2.0
*/
phoneNumber: string;
}

This page is generated from the plugin’s src/definitions.ts. Re-run the sync when the public API changes upstream.

If you are using Getting Started to plan dashboard and API operations, connect it with API Overview for the implementation detail in API Overview, Introduction for the implementation detail in Introduction, API Keys for the implementation detail in API Keys, Devices for the implementation detail in Devices, and Bundles for the implementation detail in Bundles.