Skip to content

Getting Started

Terminal window
bun add @capgo/capacitor-app-tracking-transparency
bunx cap sync
import { AppTrackingTransparency } from '@capgo/capacitor-app-tracking-transparency';

Gets the current tracking authorization status without prompting the user.

import { AppTrackingTransparency } from '@capgo/capacitor-app-tracking-transparency';
const { status } = await AppTrackingTransparency.getStatus();
if (status === 'authorized') {
console.log('Tracking is authorized');
}

Requests user authorization to access app-related data for tracking. Displays the native iOS tracking permission dialog.

Note: This method will only show the dialog once. Subsequent calls will return the stored authorization status without showing the dialog.

import { AppTrackingTransparency } from '@capgo/capacitor-app-tracking-transparency';
const { status } = await AppTrackingTransparency.requestPermission();
switch (status) {
case 'authorized':
console.log('User authorized tracking');
break;
case 'denied':
console.log('User denied tracking');
break;
case 'restricted':
console.log('Tracking is restricted');
break;
case 'notDetermined':
console.log('Status not determined');
break;
}

Response object containing the tracking authorization status.

export interface AppTrackingStatusResponse {
/**
* The current tracking authorization status.
*
* @since 1.0.0
*/
status: AppTrackingStatus;
}

Possible values for the tracking authorization status.

export type AppTrackingStatus = 'authorized' | 'denied' | 'notDetermined' | 'restricted';

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