Cliq Bots - Get notifications about any action on an application with the incoming webhook handler!

Cliq Bots - Get notifications about any action on an application with the incoming webhook handler!

Webhooks can be used to get notified about events happening in other applications inside Cliq. All bots in Cliq have their own incoming webhook endpoint. This makes it simple to post messages to the bot from external applications. Unlike the send message (/message) REST API, here any data can be posted to the endpoint which is further processed in the incoming handler before notifying in Cliq.

The incoming webhook allows third-party applications to send notifications/alerts using the incoming webhook URL. These responses mostly received as a JSON can be then customized using Cliq's message card templates. The incoming webhook URL of the bot should be configured with the application's outgoing webhook. 

Incoming webhook handler workflow 

The bot's incoming webhook URL will receive the request response from the third party application's URL. The response of the request will be obtained in the body attribute. Take a look at all the attributes passed when a bot's incoming webhook handler is executed in our help page

A pictorial comparison between how Rest APIs and incoming webhooks work is shown below!
Now that we've got the concept of webhooks cleared, let's start off by creating a simple bot's webhook handler. Take a look at the sample scenario given below.

Sample Scenario 

Your support team uses Zendesk to take care of customer queries and keep track of tickets. The team also uses Cliq for internal team communication. So how can you make sure all support reps are notified in Cliq when a new ticket with a high priority has been created? Here's what you can do - create a Support Bot! 

Before we start, this is an integration by parts. Which means that you have to configure the webhook in Zendesk and format your response in Cliq. 

Cliq's part in the integration:  

Creating a bot in Cliq is just a three-step process. All you've to do is, 
  1. Click ' Settings ' in Cliq's top nav bar. 
  2. Select ' Integrations '.
  3. Once you're on the Integrations page, click ' Create Bot ' and give your bot a name, description, status, access level and image! 
Now, to set up the incoming webhook handler of your bot :
  1. Saving the bot will take you to the ' Edit Handlers ' page. Or you can navigate to the edit handlers page from the bot's preview.
  2. Click ' Edit Code ' under the bot incoming webhook handler. 
  3. Write your code in the deluge editor (once you set up the JSON body in Zendesk), click save and done! Take a look at the sample code snippet given below:
  1. // Incoming Webhook Handler Code Snippet 
  2. response = Map();
  3. title = body.get("title");
  4. priority = body.get("priority");
  5. description = body.get("description");
  6. url = body.get("url");
  7. id = body.get("id");
  8. status = body.get("status");
  9. assignee = body.get("assigned_to");
  10. response = {"text": "A new ticket has been created. The ticket details are given below: \n Ticket Name: " + title + " \n Description:" +description+   "\n Priority: `" + priority+ "` \n Ticket ID:" +id+ "\n [Ticket URL](https://" +url+ ") \n Status: " +status+ " \n Assigned To: " +assignee };
  11. return response;
To be done in Zendesk

Create a Target: 
  1. Create an extension. To do so, click 'Extensions' under 'Settings' 
  2. Click 'Add Target' under the targets tab. 
  3. Click 'HTTP target' and give a name, URL, method. 
  4. Give your bot's incoming webhook URL along with the zapikey parameter. Take a look at how to create a zapikey  here
  5. Set your HTTP method as POST. 
  6. Select 'Create Target' and click Submit. 
Sample Bot Incoming Webhook URL:

That's it! Your extension has been created.

Create a Trigger:

The next action is to create a trigger. Triggers are automated rules that work based on predefined conditions. 
  1. Navigate to the Triggers tab and click ' Add Trigger '
  2. Give the trigger a name, description and set a condition. Take a look at the sample condition used for the example shown below. 
  3. Under Actions, select ' Notify Target ' and select your target name. 
  4. The JSON body will contain the ticket details. Modify this to suit your team's requirements. Here's a sample code snippet for the JSON body.
  5. Click Save! 
Sample Trigger Code Snippet:

  1. {"title":"{{ticket.title}}", 
  2. "description" : "{{ticket.description}}", 
  3. "priority":"{{ticket.priority}}",
  4. "url": "{{ticket.url}}",
  5. "id":"{{ticket.id}}",
  6. "status":"{{ticket.status}}",
  7. "assigned_to":"{{ticket.assignee.name}}"
  8. }
Now creating a ticket with a priority set as Urgent  will notify all the support reps in Cliq via the Support Bot!

Take a look at how the Zendesk Ticket will be notified in Cliq via the Support Bot : 

Ticket in Zendesk 




Support Bot notifying in Cliq



And that's how easy it is to configure a bot's incoming webhook handler. Comments and suggestions are welcome. 

Few useful links:




Best,
Manasa
Cliq




    • Sticky Posts

    • Automating Employee Birthday Notifications in Zoho Cliq

      Have you ever missed a birthday and felt like the office Grinch? Fear not, the Cliq Developer Platform has got your back! With Zoho Cliq's Schedulers, you can be the office party-cipant who never forgets a single cake, balloon, or awkward rendition of
    • Convert a message on Cliq into a task on Zoho Connect

      Message actions in Cliq are a great way to transform messages in a conversation into actionable work items. In this post, we'll see how to build a custom message action that'll let you add a message as a task to board on Zoho Connect. If you haven't created
    • Cliq Bots - Post message to a bot using the command line!

      If you had read our post on how to post a message to a channel in a simple one-line command, then this sure is a piece of cake for you guys! For those of you, who are reading this for the first time, don't worry! Just read on. This post is all about how
    • Cliq Bots - How to make a bot respond to your messages?

      Bots are just like your buddies with whom you can interact. They carry out your tasks, keep you notified about your to-dos and come in handy when you need constant updates from a third party application.  So, how can you make your bot respond to a message? The bot message handler is a piece of code triggered when a message is sent to the bot. Message handlers help you customise your bot responses to make it look conversational. The message input from the user can be either a string or an option selected
    • Cliq Bots - Get notifications about any action on an application with the incoming webhook handler!

      Webhooks can be used to get notified about events happening in other applications inside Cliq. All bots in Cliq have their own incoming webhook endpoint. This makes it simple to post messages to the bot from external applications. Unlike the send message
    • Recent Topics

    • Introduction of Robotics Process Automation in Zoho products

      It will be great if Zoho can start advancing from automation to robotics process automation. For a start, it can be started with smart document understanding. Provide OCR engines Google cloud, Microsoft Azure Computer vision OCR, Microsoft OCR, Omnipage
    • Lock a custom field on a deal record but keep all other fields editable?

      I have a custom field, which auto-populates a job number upon converting a lead to a deal but the automation breaks if someone accidentally edits that field. I want to lock that field but keep all other fields open. Is this possible? I've tried through
    • Add Feature To Hide Plugin Sections On Record View

      Hi team, I'm trying to help a client tidy up their CRM. When it comes to record view some sections and fields are visible no matter what Layout Rules are applies and they are not removeable from the layout editor. I would like to see an option to hide
    • Creator Simplified #10: Predefine Form Field Values and Make Them Read-Only for Users

      Hey Creators, Ready for this week's tip in the Creator Simplified series? Today, we will explore how to have read only fields in a form. Use Case: Assume a scenario where the default value for a Department field needs to be English Literature, but you
    • fetch records from analytics table from creator

      I have a creator workflow that I am working in that will compare data from within the app to a table in zoho analytics. Is there a way to fetch a record from Analytics? I have attempted a custom connector with analytics and tried to use it with invoke
    • Directly Edit, Filter, and Sort Subforms on the Details Page

      Hello everyone, As you know, subforms allow you to associate multiple line items with a single record, greatly enhancing your data organization. For example, a sales order subform neatly lists all products, their quantities, amounts, and other relevant
    • Ability to Change Custom View After Cadence Creation

      Dear Zoho Team, I hope you are well. We would like to request an enhancement to the Cadence feature in Zoho CRM. Currently, during the creation of a Cadence, we can select a Custom View under the "Who is this for?" section. However, once the Cadence is
    • Zoho Creator Integration with QuickBooks: A Step-by-Step Guide

      Introduction: Integrating Zoho Creator with QuickBooks allows you to sync your business data between the two platforms, providing a seamless experience for managing accounting, invoicing, and financial data. This integration helps automate workflows and
    • Note not being pulled for other modules in email template

      Hi there, Currently i am creating an email template that is able to pull the data from notes field in estimate module and email it to procurement team where they will be able to receive the email with the contents of the note, i am unable to replicate
    • No Sales Returns on SO's with Dropped Shipped items + Inventory Items

      We have encountered an issue in Zoho related to sales orders that include both dropshipped items and inventory items. Specifically, it is currently not possible to create sales returns for the company’s own inventory items from these sales orders. This
    • Pre-fill TO and CC fields for Email Templates

      This would be a game changer to be able to set either specific email addresses or merge fields based on deal role titles into email templates. Please pass this along to *hopefully* add to future features of Zoho CRM.
    • Pick list - Cannot save list "Special Characters not Allowed" error message

      Bulk uploading values. All values are pretty standard - with the exception of a "-" (dash). Like:  Industry - Prepared Food Is the simple dash a special character too? Jan
    • Flow with CRM

      Hello, I have a simple flow that uses a web hook to enter data into a Sales Order. I have the web hook sending Flow data which has a PO field. If the PO has a special character like - or / or \ the task fails. How can I get the flow to be okay with the
    • Making the Resolution Tab Mandatory

      Hello Everyone! This edition is here to show you how to make the Resolution mandatory when closing a ticket. The Ticket Resolution tab helps keep a record of the solution provided for the ticket query. The resolution can serve as a quick reference to
    • Remove County field from Customer Address input screen (or allow input to be deleted)

      We are in the USA and have just noticed that there is now a County field in the Customer Address input screen (and maybe other areas of Zoho Books, but this is the one affecting us at the moment). County is not important to our business, and in fact we
    • Notificación de cumpleaños

      Hola: Se puede enviar alguna alerta de felicitación al personal que cumple años, que se dispare solo? Si existe como se puede hacer? Saludos
    • Automation#25: Move Tickets to Unassigned When the Owner Is Offline

      Hello Everyone, Welcome to this week's Community Series! 'Tis the holiday season—a time when work often takes a brief pause. The holiday spirit is in full swing at Zylker Techfix too, with employees taking some well-deserved time off. During this period,
    • Callback URLs

      I need to connect to an external service through an API that requires me to provide a Callback URL so that a status update can be sent back when the API request has been processed. Is there a way to do this in Creator without having to use a middleware
    • Email signature not being included if user creates ticket / sends email

      When I create a ticket (send email), the signature doesn't appear to be added to the ticket. Can you confirm if this is the case? It would obviously be useful to include the user's signature even when sending a client an email and not only on replie
    • Zoho Notebook window ignores taskbar

      When maximized to full screen, the Zoho Notebook window ignores the presence of the taskbar and overlaps it. What could be the problem? Linux Mint 22 Cinnamon. Zoho Notebook 3.2.0
    • URL for job opening

      I would like to ask you to add this feature to the product: create an unique url for each job opening on Zoho Recruit, so that I can add a link to it when I post the opportunity in a mailing list or on a forum.
    • Document images

      We used to be able to rotate the images but this has now been removed ???
    • VENDORS ARE NOT SYNCHED WITH CONTACTS IN CRM

      Hello, While the ACCOUNTS and CONTACTS (Including the primary contact) are synced with the CONTACTS module in CRM, the vendor's CONTACTS are not synced with CRM - which basically forces the users to re-enter all vendor's contacts twice and then update
    • Involved account types are not applicable when create journals

      { "journal_date": "2016-01-31", "reference_number": "20160131", "notes": "SimplePay Payroll", "line_items": [{ "account_id": "538624000000035003", "description": "Net Pay", "amount": 26690.09, "debit_or_credit": "credit" }, { "account_id": "538624000000000403", "description": "Gross", "amount": 32000, "debit_or_credit": "debit" }, { "account_id": "538624000000000427", "description": "CPP", "amount": 1295.64, "debit_or_credit": "debit" }, { "account_id": "538624000000000376", "description":
    • KB Templates

      * It would be nice if Zoho can provide users an option to create custom templates for KB articles. Also, it would be nice as well if the users can have an option to 1.) select a default template and 2.) declare default tag/tags, for KB articles created through Ticket's resolution.
    • Zoho CRM Reports Module on Mobil App

      I have the mobile app and the reports module doesn't appear in the sidebar for some reason. I saw a Youtube video where the user had the Reports module on mobile. Is there a setting to show it on mobile? Thanks.
    • Contacts Don't Always Populate

      I've noticed that some contacts can easily be added to an email when I type their name. Other times, a contact doesn't appear even though I KNOW it is in my contact list. It is possible the ones I loaded from a spreadsheet are not an issue and the ones
    • Zoho Projects Android app update - List view enhancement

      Hello, everyone! In the latest android version(v3.9.15) of the Zoho Projects app update, we have enhanced the List view of tasks. We have also introduced a complete scroll of the tasks in the list view without scrolling the task fields(status, start date,
    • On the US Data Centre rather than the UK but dont know how to migrate it

      We have a new staff member with an external email address and cant add them to Zoho chat - we have been told its becuase we are in the UK but on a US Data centre - we therefore need to change it but no idea how to can anyone else as we are going round
    • Zoho Sheet Custom function column showing Error #EVAL!

      Hello I have a custom function in Zoho Sheet developed to convert a date time from one time zone to another. The custom function takes date and time columns and then using subHour( ) converts the time to PST time. However, though the custom function works,
    • How to add a Data Updated As Of: dynamically in text?

      I need to add a "Data Updated As Of" in the dashboard to show when was the last date the data was updated. I tried to create a widget but it does not look really good, see below. Is there a way I can do this through the text widget and update it automatically
    • Create Your Own Issue Management System

      Effective issue management is a cornerstone of project success. Every bug or issue, no matter how small, needs to be tracked and resolved in time to maintain project momentum. In this post, we’ll explore how an issue management system in Zoho Projects
    • Resource utlisation

      Dear Team, We use the excel for the weekly predicted people utilization how the resource are allocated , is there any way that i can use any of the zoho products.
    • Ask the experts - A live Q & A discussion on Zoho Recruit

      We are delighted to come back with another edition of Ask the Experts community series. This edition, we'll be focusing on everything about Zoho Recruit. The topics will focus on the features that are used/asked by the majority of users and also based
    • Bug - OTP (email) and No Duplicates

      Scenario: Form with an email field, Validation: "No Duplicates" (because I want to ensure 1 entry per email). Embedded form into website (JS option). Enabled email based OTP. 1st test (via my website) - entered my email address - sent OTP - entered pin,
    • Personal Facebook page posting instead of Business Page

      I have a Facebook page that is associated with my Personal Profile and I am the Admin of that Page. I would like to schedule and Post to my Personal Page not the Business Page. Each time I try to connect to the "Page" it takes me to the Business Page. Is there a way of connecting to my personal page?
    • Fixed asset management

      I want to know if there is any individual module for fixed assets management
    • Recording depreciation of fixed assets as a percentage of residual value

      In India, fixed assets are depreciated as a percentage of their residual value at the beginning of each fiscal year. I went through the documentation for creating recurring journal entries, but could only find ways to depreciate by a fixed rupee amount
    • Function #28: Automatically calculate Customer Loyalty points

      Hello everyone, and welcome back to our series! Today, we're excited to share a workflow designed to streamline the management of loyalty points. Many businesses offer incentives or rewards in the form of loyalty points to their customers as a way to
    • Function #6: Calculate Commissions for paid invoices

      Zoho Books helps you automate the process of calculating and recording commissions paid to sales persons using custom functions. We've written a script that computes the commission amount based on the percentage of commission you enter and creates an
    • Next Page