Birdie
HomepageLog inSign up
Birdie Documentation
Birdie Documentation
  • 👋START HERE
  • What is Birdie?
  • Getting started
  • Invite teammates
  • 🎥Request Screen Recordings
    • Overview
    • Installation
      • 🧩Helpdesk Integrations
      • 🎨Customize Appearance
      • 👾Snippet
      • 🌐Browser compatibility
      • 🌎Languages
      • 🔌Web SDK
      • 🔗Universal Request Link
    • DevTools: Console Logs & Network Requests
    • AI Summary
    • Misc.
      • Forward recordings
      • Routing rules for folders
      • API
      • How-to's Library
  • 🎥Record my screen
    • Overview
    • Install Chrome extension
    • Recording Options
    • DevTools: Console Logs & Network Requests
    • Keyboard Shortcuts
    • Incognito Mode
    • Troubleshooting
      • How to quickly fix common recording errors
      • How to troubleshoot Microphone issues in Birdie Extension
      • How to troubleshoot Screen Recording issues in Birdie Extension
  • 🧩Helpdesk
    • 🟤Zendesk
      • Installation
      • Flows
        • Human Request
        • Zendesk Macros
        • Zendesk Ticket Form
        • Zendesk Auto-Reply
        • Zendesk AI Agents
        • Zendesk Agent Signature
        • Zendesk Widget (Classic)
      • Misc.
      • Analytics
      • Uninstall
    • ⚫Intercom
      • Installation
      • Flows
        • Human Request
        • Intercom Workflows
        • FIN
        • Intercom Messenger Home
        • Misc.
        • Analytics
    • 🟢Freshdesk
      • Installation
      • Flows
        • Human Request
        • Portal
        • Canned Answers
        • Auto Reply
        • Agent Signature
      • Analytics
    • 🟢Freshchat
      • Installation
      • Flows
        • Manual Request
    • 🔵Jira Service Management
      • Installation
      • Flows
        • Human Request
        • Customer Portal
      • Uninstall
    • 🟣Help Scout
      • Installation
      • Flows
        • Human Request
        • Saved Replies
        • Auto Reply
    • 🔵Salesforce Service Cloud
      • Request link - Installation
      • Flows
        • Human Request
        • Ticket Form
    • Others
      • 🟠Happyfox
        • Installation
        • Flows
          • Human Request
          • Support Center Ticket Form
      • ⚫Ada
      • 🟣Forethought
      • 🟠Hubspot
        • Flows
          • Human Request via Snippet
      • ⚫Service Now
        • Flows
      • 🟣Front
        • Flows
      • 🟢Zoho Desk
        • Flows
      • 🔵Crisp
        • Flows
      • ⚪Other Helpdesk
        • Flows
          • Human Request
          • Ticket Form
  • 🔐Security
    • Storage Location
    • Hide sensitive data
    • Auto data deletion
    • Recordings Privacy Settings
      • Incoming Recordings: Only Workspace Members Can Watch
      • Outgoing Recordings: Only Workspace Members + Selected Individuals Can Watch
    • GDPR opt-in
    • Two-factor authentication
    • Remote log out
    • SAML SSO
      • Setup SSO with Okta
    • SCIM
      • Okta settings
Powered by GitBook
On this page
  • 1. Install Birdie snippet
  • First option: Frontend Integration using NPM
  • Second option: Legacy Manual Setup
  • 2. Whitelist Birdie in your Content Security Policy
  1. Request Screen Recordings
  2. Installation

Snippet

How to install Birdie snippet

PreviousCustomize AppearanceNextBrowser compatibility

Last updated 19 days ago

Birdie Snippet is required for .

Birdie Snippet is required if you want to .

1. Install Birdie snippet

You can choose between 2 options:

First option: Frontend Integration using NPM

npm install @birdie-so/snippet
# or
yarn add @birdie-so/snippet
Use with React / Vue / Angular / JS

You must get your own clientId, get it from your Birdie section.

import { initBirdie } from "@birdie-so/snippet";

initBirdie({
  clientId: "YOUR_CLIENT_ID", // required

  // Optional metadata available to recordings
  metadata: {
    user: {
      id: "123",
      email: "user@example.com",
    },
  },

  // Optional hook once Birdie is ready
  onReady(birdie) {
    birdie.on("start", (data) => {
      console.log("Recording started", data);
      birdie.metadata = { dynamicKey: "value" };
    });

    birdie.on("stop", (data) => {
      console.log("Recording stopped", data);
    });
  },
});

👉 You will find some more infos about implementation .


Second option: Legacy Manual Setup

We do not recommend installing Birdie through Google Tag Manager or Segment. The preferred method is to paste the code directly onto your web application, as this will result in faster load times.

  1. Go to

  2. Copy the snippet code and paste it before the </body> tag of your web app. Note that the snippet is unique to your organization.

How to add custom medatada

Optionally add your own metadata if you need to store additional data along the recordings like this:

// 1st method: add this before loading the snippet
window.birdieSettings = {
    contact_email: "john.doe@acme.com",
    metadata: {
        mykey: "value",
        otherkey: [
            { x: 12, y: 13 },
            { opacity: 35, width: 440 }
        ]
    }
}

// 2nd method, add metadata after loading the snippet: 
if (window.birdie) {
    window.birdie.metadata = {
        mykey: "value",
        otherkey: [
            { x: 12, y: 13 },
            { opacity: 35, width: 440 }
        ]
    }
}

💡 Note that if you have several tabs open with the snippet loaded, only the latest metadata that was set will be available along a recording.

How to hook into recorder events

Optionally you can register for events to know when a recording has started and stopped. First make sure window.birdie object is present by registering for onBirdieReady event before loading the snippet, then register for "start" and "stop" events like this:

window.birdieReadyCallback = function() {
  console.log("Birdie Ready, window.birdie object is now available")
  window.birdie.on('start', function(data) {
    console.log("A recording was started", data);
    // save custom data, or add metadata
    window.birdie.metadata = { key: "value" }
  });
  window.birdie.on('stop', function(data) {
    console.log("A recording was stopped", data);
  });
}
  
window.birdieSettings={
  onBirdieReady: birdieReadyCallback
}

// then add the snippet…

2. Whitelist Birdie in your Content Security Policy

To ensure proper functionality, whitelist the following:

  • Secure WebSocket protocol: wss://*.birdie.so

  • Port: 443 (TCP and UDP)

  • IP Address: 18.189.92.9

This will allow Birdie to function smoothly within your network environment.

How to Send instructions to our developers?

HTTPS:

If you don't have access to your codebase and need help with the installation, you can send the instructions to your developers directly for your .

If you need help or have a question, contact us at

🎥
👾
capturing logs
hide sensitive data
settings > incoming
in this page
settings > incoming
https://*.birdie.so
settings page
support@birdie.so