Popin 3P Events Documentation

Popin 3P Events Documentation

Overview

Popin provides JavaScript events via the global function window.popinEvent. These events allow you to track user interactions, permissions, and call activities on the Popin widget.
You can listen to these events and forward them to your analytics, backend systems, or third-party tools as required.


Integration Example

Place the following script below the Popin integration snippet:

window.popinEvent = (event, data) => {
  if (event === "popin_captured") {
    // Example: Facebook Pixel integration
    fbq("trackCustom", "popinCapture", {
      name: data.name,
      mobile: data.mobile,
    });
  }
};

In this example:

  • event represents the triggered event name (e.g., popin_captured).

  • data is the payload object associated with that event.


Event Reference

1. nudge_show

Description: Triggered when a nudge popup is displayed to the user.
Payload:

{
  "uid": "string"
}

2. nudge_open

Description: Triggered when the user opens the nudge popup.
Payload:

{
  "uid": "string"
}

3. nudge_close

Description: Triggered when the user closes the nudge popup.
Payload:

{
  "uid": "string"
}

4. popin_permission_given

Description: Triggered when the user grants microphone and/or camera permissions.
Payload:

{
  "uid": "string",
  "audio": true,
  "video": true
}

5. popin_permission_denied

Description: Triggered when the user denies microphone and/or camera permissions.
Payload:

{
  "uid": "string",
  "audio": true,
  "video": true
}

6. popin_expert_busy

Description: Triggered when the expert is busy and cannot take the call.
Payload:

{
  "uid": "string"
}

7. popin_rating_done

Description: Triggered when the user submits a rating and optional feedback after a call.
Payload:

{
  "uid": "string",
  "rating": "integer",
  "comment": "string"
}

8. popin_schedule_created

Description: Triggered when the user schedules a call.
Payload:

{
  "uid": "string",
  "timezone": "string",
  "time": "string"
}

9. popin_call_end

Description: Triggered when a call ends.
Payload:

{
  "uid": "string",
  "callId": "string",
  "invited": true
}

10. popin_captured

Description: Triggered when a new user/lead is captured via the widget.
Empty or null fields are automatically removed.
Payload:

{
  "name": "string",
  "email": "string",
  "country": "string",
  "mobile": "string",
  "city": "string",
  "pin_code": "string",
  "group": "string",
  "uid": "string"
}

Notes

  • Every event includes a uid field, which uniquely identifies the user session.

  • Payloads may vary based on:

    • User-provided input

    • Device permissions (microphone/camera)

    • Widget configuration

  • Optional fields may be omitted if not provided. Always handle missing fields gracefully.

    • Related Articles

    • Popin Webhook Integration Guide

      Overview Popin's webhook functionality allows you to receive real-time notifications about events happening in your Popin widget. This guide explains how to set up webhooks and describes the event payloads you can expect to receive. Setting Up ...
    • Popin Zapier Integration Guide

      Popin Zapier App Integration Overview The Popin Zapier App enables you to integrate Popin with thousands of other applications through Zapier. This guide provides instructions on how to connect Popin to Zapier, configure triggers, and use API ...
    • Passing Campaign Data via Popin & Webhook Meta

      Popin supports passing campaign and tracking data (such as UTM parameters and custom identifiers) when opening the widget. This data is automatically included in webhook payloads under the properties.meta object, ensuring consistency across all ...
    • Integrating Popin Sales Tracking on Shopify

      To ensure seamless sales tracking with Popin, please follow the steps below to integrate the new Popin sales tracking pixel into your Shopify store. Steps to Integrate Popin Sales Tracking Step 1: Access Your Shopify Admin Panel Log in to your ...
    • Integrating Popin SDK in Android

      Introduction This article explains how to integrate and use the PopinAndroidSDK library to add video calling functionality in your Android application. The SDK is easy to integrate and comes with pre-built classes like PopinConnectingDialog to handle ...