Getting Started with DeskDirector
DeskDirector Portals
Browser Support
What is the DeskDirector Admin Portal?
What is the DeskDirector TECH Portal?
What is the DeskDirector Client Portal?
Desktop Portal
Managing Your Account
Pricing & Subscription Plans
Deskdirector - Sign up walk through
Managing your DeskDirector Subscription
Admin Essentials
Release Notes
Permissions & Feature Configuration (Tokity)
Permissions & Feature Configuration (ConnectWise/Autotask Partners)
Automatic Contact Creation
The Developer Corner
DeskDirector Features Overview
Desktop Portal Version Differences
Logging in to DeskDirector
User Profiles & Profile Pictures
Office Hours
Using Markdown
How Searching Works
Embedding Help Page Media
Get started with the DeskDirector Power Automate Connector
Features
Portal Customization
Service Catalogue
Forms
Getting started with DeskDirector Forms
DeskDirector Forms - Question Types in Detail
Dynamic Form Content
Communication
Actionable Messages for Emails
Real-Time Chats
Notifications
Email Notifications
Email Template Engine
Surveys
Broadcasts
Generative AI
DeskDirector with Generative AI
Setting up AI Service Providers
AI Assistants in DeskDirector
Custom Tools for AI Assistants
Knowledge Bases for AI Assistants
Ticket Summary for Tech Portal
Advanced
Login & Authentication
Contact & User Groups
Approvals
Task Lists
The Learning Center
Tags
Custom Domains
File Storage
Portal Deep Linking
Clean Tickets
Contacts
Accounts
Service Dashboard
Auditing and Analytics
Integrations
ConnectWise
ConnectWise Custom Menu Item for DeskDirector
ConnectWise
ConnectWise Quotes & Invoices
ConnectBooster
ConnectWise Sell
ConnectWise - Avoid Aggressive Notifications
AutoTask
Switching or Merging PSAs
QuoteWerks
Wise-Pay
TimeZest
BiggerBrains
OneNote Notebooks
Integrations - Frequently Asked Questions
IT Glue
Microsoft Teams App
Introducing the DeskDirector for Microsoft Team App
Installing the Microsoft Teams App (Client Mode)
Installing the Microsoft Teams App (Tech Mode)
Setting up Tags for Teams Discussions (Tech)
Branding the DeskDirector Teams App
DeskDirector Teams App Notifications
User Groups Integration with Microsoft Teams
Setting up Content Security Policy (CSP)
Advanced topic: Setting up Tech & Client Mode in the same tenancy
Integrating Microsoft Teams with DeskDirector Tech Portal
Smart Alerts for Tech Users
Microsoft Power Automate
Actions
Solutions
Power Automate Template Gallery
Featured Solution: Teams Ticket Discussion
Featured Solution: Ticket Briefing
Introduction to Power Automate
Power Automate Connector - Setting up your first flow
DeskDirector Power Platform Connector Reference
DeskDirector Connector Triggers
Troubleshooting
Troubleshooting via Web Developer Tools
Desktop Portal - Common Issues
Contact & Service Agent Impersonation
Diagnose Entities Tool
DeskDirector Desktop App - Installation Issues
Troubleshooting DeskDirector Connection Issues
Login & Authentication - Common Issues
Permissions & Access - Common Issues
Tickets & Chats - Common Issues
Approvals - Common Issues
Email & Email Delivery - Common Issues
PSA Entity Syncing - Common Issues
PSA Integration - Common Issues
ConnectWise Integration - Common Issues
Autotask Integration - Common Issues
ConnectWise Audit Trail - Exporting API Logs
Microsoft Teams App - Common Issues
Contact DeskDirector Support
Security
Glossary
Archived
- All Categories
- Archived
- Subscribing to Chat Webhooks
Subscribing to Chat Webhooks
DeskDirector can call webhooks whenever a chat session is created or updated. This is a really powerful way to customize your chat workflow. The following steps assume you already have an http endpoint setup to send data to, we do not currently have a guide to help you do this. If you are comfortable with Zapier or Flow you shouldn't have a problem with following this guide.
Step 1: Head to the webhook page
This can be found in your admin console under Advanced > Developer Corner. Once in the page, enable the webhooks feature by checking the box. Once done, go to Advanced > Webhook

Step 2: Add a new webhook subscription
To create a chat webhook, click on the dropdown arrow beside "Create Webhook" then select Add Chat Webhook . Provide the information needed to setup the chat webhook like Description, Receiver URL and select which chat event you want for the webhook.

Step 3: Test your webhook
Create a chat session and verify that the payload is reaching your endpoint. To check what the payload should look like, see here.
What can I do with this?
Some ideas:
- Send an email to a manager whenever a chat session is abandoned by a user
- Alternatively you could create a ticket inside your PSA to make sure someone follows up
- Send an email to your technicians if a chat session remains in the 'handled' status for more than 1 hour. It's unlikely that a chat session is ongoing for more than an hour, so this is a good reminder for your technicians to close their chat sessions and create tickets.
Chat Webhook Payload
The payload will contain a list of events. Each event represent one of chat sessions change. Below are explaination for some of properties.
You can use website such as https://webhook.site to test out webhook payload. Then use either Zapier or other automation tool to trigger notification.
By using Zapier, you can broadcast to Microsoft Teams, Slacks etc.
- status:
- created, - session been created
- handled, - session been handled by one of technician
- missed, - user left session without been answered
- callback, - user left session and setup callback info
- completed - session been closed
- pastStatus: a list of past status.
- type:
- request - chat request from end user. (portal)
- push - push chat, which initialized by technician from TECH
- reference: If the chat is regarding to a ticket, type will be ticket and id will be ticket id.
- creator: User who created this chat session. it can be member or contact.
- targetUsers: Chat invitation list. When invite other user, they will be inside target users list first, if they accept, it will move under users list.
- users: Who is inside this chat session.
- partitions: All the users who have ever been entered this chat session.
[
{
"msp": "dd",
"id": "1586985009-627B",
"name": "Test",
"type": "request",
"status": "handled",
"pastStatus": ["created", "handled"],
"report": {
"creatorWaited": null,
"handledDateTime": null,
"chatDuration": null
},
"reference": {
"type": "ticket",
"id": "22282"
},
"creator": {
"entityId": 106,
"name": "Jason He",
"userId": "dd~c~106",
"company": {
"entityId": 19348,
"name": "DeskDirector",
"identifier": "DeskDirectorLtd"
}
},
"callback": null,
"targetUsers": [],
"closeRecord": null,
"users": [
{
"entityId": 106,
"name": "Jason He",
"userId": "dd~c~106",
"company": {
"entityId": 19348,
"name": "DeskDirector",
"identifier": "DeskDirectorLtd"
}
}
],
"participants": [
{
"entityId": 106,
"name": "Jason He",
"userId": "dd~c~106",
"company": {
"entityId": 19348,
"name": "DeskDirector",
"identifier": "DeskDirectorLtd"
}
}
],
"lastMessageId": null,
"createdDateTime": "2020-04-15T21:10:09.5895683Z",
"lastModifiedDateTime": "2020-04-15T21:12:00.9897216Z",
"meta": {
"canAccess": true
}
}
]