• Sends a custom tracking event with the provided event name and optional attributes. The event will only be sent if:

    • The event name is in the allowlist of valid tracking events
    • All required attributes for the event are provided

    Parameters

    • event: "subscriptionmanager_loading_started" | "subscriptionmanager_loading_completed" | "subscriptionmanager_loading_globalerror" | "skuswap_started" | "skuswap_exited" | "skuswap_completed_swapped" | "subscriptioncancel_skuswap_shown" | "subscriptioncancel_skuswap_backedout" | "subscriptioncancel_completed_saved_swapped" | "subscriptioncancel_started" | "subscriptioncancel_exited" | "subscriptioncancel_completed_canceled" | "subscriptioncancel_pause_shown" | "subscriptioncancel_pause_backedout" | "subscriptioncancel_completed_saved_paused" | "subscriptioncancel_skip_shown" | "subscriptioncancel_skip_backedout" | "subscriptioncancel_completed_saved_skipped" | "subscriptioncancel_exitsurvey_shown" | "subscriptioncancel_exitsurvey_backedout" | "subscriptioncancel_discount_shown" | "subscriptioncancel_completed_saved_discountclaimed" | "subscriptioncancel_discount_backedout" | "subscriptioncancel_benefitsreminder_shown" | "subscriptioncancel_benefitsreminder_backedout" | "subscriptioncancel_completed_saved_benefitskept" | "subscriptioncancel_reason_selected"

      The name of the tracking event

    • event_attributes: Record<string, any> = {}

      Object containing event attributes

    Returns Promise<void>

    Example

    await og.smi.track('subscriptioncancel_started', { subscriptionId: 'sub_123' });