Chatlayer Documentation
Get in touchAbout Chatlayer
  • Welcome
  • What's new
  • Send feedback
  • start quickly
    • Leadzy tutorial
      • 0. Introduction
      • 1. New bot, new block
      • 2. Understand your users
      • 3. Collect and display user input
      • 4. Steer the conversation with Conditions
      • 5. Empower your bot with Actions
      • 6. Set up a channel and publish your bot
    • Templates
      • Banking
      • E-Commerce Returns
      • E-Bike Shop
      • E-Scooter Support
      • Feedback
      • Find Nearest Location
      • GPT
      • 🆕Gym
      • Job applications
      • Knowledge base AI template
      • Lead generation
      • 🆕NPS
      • Restaurant
      • Retail
  • navigation
    • Analytics
      • Dashboard
      • Customers
      • Conversations
      • User flow
      • Intents
      • 🆕Funnels [Beta]
    • Bot builder
      • Flows
        • Canvas functionalities
        • Collaborate with team members
        • Manage your flows
        • 🆕[Beta] Export and import flows
      • Bot dialogs view
      • Translations
      • Events
    • NLP
      • Dashboard
      • Intents
      • Expressions
      • Entities
      • Train
      • NLP settings
      • Improve
    • Knowledge base AI
      • Add content to your KBAI
      • Build your KBAI flow
      • Use your KBAI source URL in a button
      • Use tags to limit your KBAI content
      • 🆕Use Tables to store your KBAI questions
      • 🆕Manage handover where KBAI is unsatisfactory
    • History
      • Conversations
      • Execution logs
      • Versions
    • Channels
    • Tables
      • Create a table with records
      • Column types
      • Operate on your records
        • Insert record
        • Update record
        • Retrieve record
        • Delete record
      • API
    • Settings
      • Bot settings
      • Offloading
      • Variables
      • Voice
      • Import/Export
  • build your bot
    • Conversation design
      • Plan your bot
      • Conversation design workflow
    • Flow logic
      • Blocks
        • Message
        • Condition
        • Collect input
        • Action
      • Go-to connections
    • 🆕Emulator
    • Tips & best practices
      • Route your flow depending on the time
      • Improve the Not understood block
        • How to create better not understood messages
        • Not understood counter
        • Not understood Google search
      • Go to previous block
      • Recognizing a returning user
      • Skip introduction message
      • Route your flow depending on the channel
      • Reuse flows
      • Connect two bots to each other
  • understand users
    • Natural language processing (NLP)
      • Basic NLP concepts
      • Detect information with entities
        • Match entities
        • Contextual entities
        • System entities
        • Composite entities
      • NLP best practices
        • Word order and diversity of expressions
      • AI intent booster
      • Train your NLP
      • Context
      • NLP import & export
      • Sentiment analysis
    • Languages
      • Supported languages
      • Make your bot multilingual
      • Change language within the conversation
  • set up channels
    • Add a channel to your bot
    • All channels
      • 🚨Facebook Messenger [Deprecated soon]
        • Facebook Admin Removal
        • Facebook Webview Whitelisting
        • Facebook Messenger API updates for Europe
      • 🚨Google Assistant [Deprecated soon]
      • Webhook
      • Web
        • 🚨Web V1 [Deprecated]
          • Customize web widget
          • Live example web widget
        • 🆕Web V2
          • 🆕From Web V1 to V2
          • 🆕Web V2 methods and options
    • Sinch Conversation API
      • Configure your Sinch Conversation API
      • 🆕 Make the most of RCS with Carousels
      • WhatsApp Business API
  • integrate & code
    • API calls
      • Configure your API integration
      • Advanced API features
      • V1 API Reference
      • Custom integrations 101
    • Code editor
      • [Example] Sending data to Airtable (POST)
      • [Example] Retrieving data from Airtable (GET)
      • [Example] Making SOAP requests
    • App integrations
      • Airtable
      • Freshdesk
      • Freshdesk Messaging
      • 🆕Gmail
      • Intercom
      • Mailgun
      • OpenAI: GPT-3, ChatGPT and GPT-4
      • Salesforce
      • 🆕Slack
      • Topdesk
      • Zendesk Support
      • Zendesk Sunshine (beta)
    • 🆕Expression syntax
    • Human handover & live chat
      • Sinch Contact Pro
      • #Interact
      • Genesys Cloud
      • Offloading Webhook
      • Salesforce Service Cloud
      • Sparkcentral by Hootsuite
      • Zendesk Chat
    • Chatlayer messages specifications
  • Publish
    • Publish your bot
      • Publish a flow
  • Analyze & maintain
    • Analytics definitions
    • Data retention
    • Maintenance
    • Session
    • Track events for analytics
  • VOICE
    • 🆕Send bot response as audio
    • Voicebots
      • Create a voicebot
      • Voicebot-specific actions
      • Test your voicebot
      • From chat to voice
  • access & support
    • Identity & Access
      • Single Sign-On (SAML SSO)
    • Billing & subscription
    • Get in touch
    • Chatlayer glossary
    • SaaS Regions & IP Ranges
    • Status
    • Debug your bot
      • No correct response
      • Collect input not working
      • Video isn't working
Powered by GitBook
On this page
  • Configure Zendesk
  • Create a new agent for the chatbot
  • Create a department for the chatbot
  • Configure your Zendesk Chat Widget
  • Configure your Zendesk Chat channel
  • Start using your bot
  • Synchronized session variables
  • Zendesk Tags
  • Configure offloading
  • Going Live

Was this helpful?

  1. integrate & code
  2. Human handover & live chat

Zendesk Chat

Learn how to configure and use Zendesk Chat on Chatlayer

PreviousSparkcentral by HootsuiteNextChatlayer messages specifications

Last updated 1 year ago

Was this helpful?

Support for the Chatlayer integration with Zendesk Chat is coming to an end as Zendesk is transitioning towards .

Zendesk only allows users on their "Enterprise" pack to use third party bot platforms such as Chatlayer. Make sure to upgrade to the "Enterprise" tier of Zendesk to use this integration.

Zendesk is a service-first CRM company that builds software designed to improve customer relationships.

Configure Zendesk

In Zendesk, your Chatlayer bot will be a separate agent that will handle incoming messages for its own department. Chatlayer provides the necessary Action blocks to transfer the conversation to a department with live agents of your choosing.

The Agent account should not be accessed by live agents, as this may disrupt the chatbot.

Create a new agent for the chatbot

First off, create the chatbot agent in Zendesk Chat by going to Settings > Agents > Add Agent.

Create a department for the chatbot

Create a new department for the chatbot by going to Settings > Departments > Add Department. Pick a recognizable name and add the chatbot agent as the Department Agent.

Configure your Zendesk Chat Widget

You should now create or adjust your Zendesk Chat Widget to automatically connect to your newly configured Chatbot department. To do so, in Zendesk Chat, go to Settings > Widget and copy the code below in "Embed Web Widget".

Here's an example of how you could adjust the Widget to automatically connect to the previously created Chatbot department:

<!-- Start of Zendesk Widget script -->
<script
  id="ze-snippet"
  src="https://static.zdassets.com/ekr/snippet.js?key=abc123
></script>
<script>
  window.zESettings = {
    webWidget: {
      chat: {
        departments: {
          select: "Chatbot"
        }
      }
    }
  };
</script>
<!-- End of chatlayerai Zendesk Widget script -->

Configure your Zendesk Chat channel

In Chatlayer, go to the Channels overview to start setting up your Zendesk Chat integration. Go to the 'Channels' menu, choose Zendesk Chat and start the channel creation by clicking the + icon.

Finding your subdomain

You will be prompted to enter your subdomain for zendesk.com.

When using Zendesk in a webbrowser, the subdomain is the first part of your Zendesk URLs. The example image below shows the subdomain "chatlayerai".

Authorize Chatlayer

When prompted to authorize Zendesk, log in to the Zendesk Agent account that should act as the bot agent. This is the agent you created earlier.

Start using your bot

You can now talk to your bot through the Zendesk Chat widget. Every incoming message from a user will be answered by the bot.

Synchronized session variables

You can easily keep the information about your users in sync between your bot and Zendesk Chat. The following session variables will automatically be synchronized to your visitor's info in Zendesk Chat:

  • zendeskChat.email

  • zendeskChat.displayName

  • zendeskChat.phone

  • zendeskChat.notes

  • zendeskChat.tags (array)

  • zendeskChat.visitor_tags (array, read-only)

Zendesk Tags

Zendesk Chat offers two different types of tags to categorize your visitors and chat sessions:

  • Chat tags contain information about the specific content of a chat session.

  • Javascript API and trigger tags contain more general information about the visitor.

Chat tags can only contain alphanumeric characters, hyphens (-) or underscores (_). The maximum length of a chat tag is 140 characters

Chat Tags (zendeskChat.tags)

You can use both types of tags in your flow by using the Zendesk session variables. Chat tags can be accessed through the zendeskChat.tags variable, you can add more chat tags to a conversation by pushing values to that variable.

Javascript API and trigger tags (zendeskChat.visitor_tags)

Javascript API and trigger tags are read-only, use Chat Tags if you want to add tags dynamically through the flow.

Visitor tags can be used to pass metadata about your users' request to the bot when a user starts a conversation. Let's say you have a website with a Zendesk Chat widget and you want to start the bot from a certain intent, because the user was on that specific FAQ page. You can pass these tags to the bot from within your website's code by calling Zendesk's JavaScript SDK:

<script id="ze-snippet" src="<ZENDESK_SNIPPET_URL>"> </script>
<script>
  window.zESettings = {
    webWidget: {
      chat: {
        departments: {
          select: "Chatbot"
        }
      }
    }
  };
  zE('webWidget', 'chat:addTags', ['change_password']);
</script>

If you import this script on a page, every user that starts a conversation will be routed to the bot with the change_password tag. You could then use this tag in your flow configuration to route this user to the right part in the conversation immediately:

Configure offloading

To transfer the conversation from the chatbot to a different department, you can create an Action block containing an Offload setting. Configure the Zendesk Chat offload provider and the department to which you want to offload the conversation.

Once this Action is triggered and the chosen department has at least one agent online, the chatbot will be paused and the user will be transferred to that department. The "Offloading Closed" block will be triggered should no-one in that department be online.

Going Live

Make sure to add your own key and name of the department in the code. More information on this topic can be found in the .

As Zendesk mentions , there are two different types of tags in Zendesk Chat:

To go live, you should configure a Zendesk channel for the Live environment on . We recommend creating a separate Bot Agent, Department and Widget connected to that Department for both your Draft and Live environments. This assures no collisions will happen between your bot's versions.

Got more questions about configuring Zendesk Live chat in your bot? Do not hesitate to contact !

Zendesk Chat documentation
on their support forum
app.chatlayer.ai
our Support department
Zendesk Sunshine
Ask a user for their email address and automatically synchronize it to Zendesk Chat
Use visitor tags to guide the user to a specific part in your flow