Enable your teams to respond in seconds by bridging the gap between booking confirmation and team notification. No sticky notes, no calendar nudges and no follow-up frenzies. For businesses that rely on scheduled appointments, real-time visibility is a crucial operational need.

Timely automated communication is essential for managing important appointments and bookings. Let's integrate Zoho Bookings with Zoho Cliq via the Cliq developer platform's bots and workflows, ensuring that every appointment confirmation is automated and reaches Cliq chats promptly.

Business Benefits

  1. Operational Efficiency: This custom solution eliminates the need for manual dashboard monitoring. Booking updates are automatically communicated to Cliq as they occur.
  2. Enhanced Customer Experience: Faster internal awareness leads to expedited confirmations, better-prepared staff, and a more seamless appointment experience.
  3. Centralized Communication: All booking activities are consolidated in the same Cliq channel your team uses daily, minimizing context switching and preventing information silos.
  4. Enterprise-Ready, No Additional Cost: Built entirely on the Zoho Cliq Developer platform, this custom solution requires no third-party middleware. It operates within your existing Zoho subscription framework.

Step 1: Create a bot 

  1. Go to the top-right corner of your profile and click on it.
  2. Select "Bots and Tools" from the dropdown menu.
  3. To create a new bot, click on "Create Bot" under the "Bots" section.
  4. Enter a name and description for your bot and ensure that channel configuration settings are enabled during setup.
  5. Finally, save the bot.

Step 2: Retrieve the bot webhook URL 

  1. Webhook tokens are listed in the Bots & Tools section along with other internal tools.
  2. When you access the webhook tokens module, you'll need to authenticate using two-factor authentication (2FA), verify your identity, and then click "Continue."
  3. After authenticating, you can create, edit, and manage your webhook tokens as needed.
  4. Generate a webhook token and retrieve the bot's webhook URL as instructed.
ⓘ Learn more about webhook tokens in Zoho Cliq.


Step 3: Generate Cliq bot incoming url  

To create the bot's incoming URL, combine the bot's endpoint with the webhook token.
  1. Navigate to the newly created bot and click on it. A pane will appear showing the bot's URL details.
  2. Copy your bot's incoming endpoint from this window and append your token to it:
  1. https://cliq.zoho.com/api/v2/bots/<yourbotname>/incoming?zapikey=<webhooktoken>
Keep this URL handy, as you will need to paste it into the Zoho Bookings workflow later.

Step 4 : Creating a workflow in Zoho Bookings 


  1. Log in to Zoho Bookings.
  2. In the left panel, navigate to one of the following options:
    1. Workflows → Custom Workflows → Create New Workflow
    2. or Workflows → Create Workflow → Create New Workflow.
  3. If you chose Workflows → Custom Workflows → Create New Workflow, complete the following fields:
    1. Workflow Name: Enter a name for your workflow.
    2. Trigger When: Select "Booked."
    3. Occurrence: Choose "Immediately."
    4. Choose Service (e.g., IT Consulting): Select your Service.
    5. Perform Action: Select "Execute Custom Functions."
    6. Customize Template: Paste the following code. 
  4. In the template editor, paste the code, replacing "<bot incoming url>" with the full URL you created in the previous step. 
    1. bookingInfoMap = Map();
    2. bookingInfoMap.put("BookingInfo",bookingInfo);
    3. cliqWebhookTrigger = invokeurl
    4. [
    5. url : "<bot incoming url>"
    6. type :POST
    7. parameters:{"Book Details":bookingInfo} + ""
    8. headers:{"content-type":"application/json"}
    9. ];
    10. info cliqWebhookTrigger;
  5. Click Create Workflow. With this setup, whenever a new appointment is booked, it will trigger a notification to your Cliq bot's incoming handler.

Step 6 : Setting up bot incoming webhook handler   

  1. Head back to Cliq, locate the bot you created under the "Bots and Tools" section, and access its incoming webhook handler.
  2. The incoming webhook handler is designed to allow third-party services, such as Zoho Bookings, to post messages directly to your bot.
  3. Copy and paste the below code, then click "Save".
Note: You can customize the message format using the Message Builder.

Pre-requisites before scripting:
  1. Create a Zoho Cliq Default Connection:

    Before you begin scripting the code below, you need to create a connection in Zoho Cliq. Once the connection is established, you can use it in Deluge integration tasks and invoke URL scripts to access data from the required service.

    Use a unique name for the connection with the scope set to ZohoCliq.Reminders.All.

    Note: Refer to the document on Connections in Cliq for more information.

  2. Post Alerts to a Channel:

    To post an alert to a channel, you'll need the unique names of both the channel and the bot. This is necessary as we will use the zoho.cliq.postToChannelAsBot Deluge task in the code below. Follow these steps to retrieve these names:

    How to Obtain the Channel Unique Name in Cliq?:

    • Navigate to the top right corner of your preferred channel and click on the three dots.
    • In the menu that appears, select "Channel info." A pop-up will display detailed information about the channel.
    • Hover over the "Connectors" section and click on it.
    • Under "API Parameters," you will find the channel unique name.

    How to Obtain the Bot Unique Name in Cliq?

    • Go to "Bots & Tools," and under the bots section, select your preferred bot.
    • Copy the API endpoint URL. The bot's unique name is located between "bots/" and the next slash ("/").

    Example:

    In this example, the bot's unique name is crmupdatesincliq.

  3. Retrieve the Bot Chat ID:
    • Open Zoho Cliq and navigate to your bot in the chat window.
    • Click on the bot to open the conversation.
    • Check the URL in your browser; the bot chat ID is the alphanumeric string that appears after "chats/".

    Example:

    In this example, the bot chat ID is CT_9874563201845670134_10005673821-B7.

After creating the connection, retrieving the channel unique name, bot unique name, and bot chat ID, keep this information handy for use in the code below.

Script
  1. response = Map();
  2. info params;
  3. info headers;
  4. info body;
  5. bookingDetails = body.get("Book Details");
  6. info bookingDetails;
  7. bookingID = bookingDetails.get("booking_id");
  8. workspaceName = bookingDetails.get("workspace_name");
  9. customerEmail = bookingDetails.get("customer_email");
  10. startTime = bookingDetails.get("start_time");
  11. endTime = bookingDetails.get("end_time");
  12. timeZone = bookingDetails.get("time_zone");
  13. summaryUrl = bookingDetails.get("summary_url");
  14. responseMsgCard = {"text":"### 📅 New Appointment","card":{"theme":"modern-inline"},"slides":{{"type":"label","title":"Details","buttons": [
  15. {"label": "Open Summary","action": {"type": "open.url","data": {"web":summaryUrl}}}],"data":{{"🆔 Booking ID":bookingID},{"🏢 Workspace":workspaceName},{"📧Customer Email":customerEmail},{"🕒 Time":startTime + " - " + endTime},{"🌍 TZ":timeZone}}}}};
  16. info zoho.cliq.postToBot("<bot unique name>",responseMsgCard);
  17. //Post to your Bot
  18. info zoho.cliq.postToChannelAsBot("<Channel unique name>","<bot unique name>",responseMsgCard);
  19. //It will send to channel with bot permission.
  20. //--------------------------------- To set reminder -------------------------------//
  21. eventTimeZone = bookingDetails.get("time_zone");
  22. info eventTimeZone;
  23. userTimeZone = user.get("timezone");
  24. dateTimeObj = bookingDetails.get("start_time").toTime("dd-MMM-yyyy HH:mm:ss",eventTimeZone).toString("dd-MM-yyyy HH:mm:ss");
  25. info dateTimeObj;
  26. info dateTimeObj.toTime("dd-MM-yyyy HH:mm:ss",user.get("timezone")).subMinutes(60);
  27. datetime_30min_sub = dateTimeObj.toTime("dd-MM-yyyy HH:mm:ss",userTimeZone).subMinutes(30).toString("dd-MMM-yyyy HH:mm:ss",userTimeZone);
  28. datetime_60min_sub = dateTimeObj.toTime("dd-MM-yyyy HH:mm:ss",userTimeZone).subMinutes(60).toString("dd-MMM-yyyy HH:mm:ss",userTimeZone);
  29. info datetime_60min_sub+"datetime_60min_sub";
  30. info datetime_30min_sub+"datetime_30min_sub";
  31. secondsVal_60sec_before = datetime_60min_sub.unixEpoch(userTimeZone);
  32. secondsVal_30sec_before = datetime_30min_sub.unixEpoch(userTimeZone);
  33. info secondsVal_60sec_before;
  34. info secondsVal_30sec_before;
  35. reminderTimes = list();
  36. reminderTimes.add(secondsVal_60sec_before);
  37. reminderTimes.add(secondsVal_30sec_before);
  38. for each  reminderTime in reminderTimes
  39. {
  40. param = Map();
  41. content = "Zoho Bookings Reminder : " + bookingID;
  42. param.put("content",content);
  43. param.put("time",reminderTime);
  44. chatidsList = list();
  45. chatidsList.add("<Bot chat id>");
  46. param.put("chat_ids",chatidsList);
  47. createReminder = invokeurl
  48. [
  49. url :"https://cliq.zoho.com/api/v2/reminders"
  50. type :POST
  51. parameters:param + ""
  52. connection:"<your connection name>"
  53. ];
  54. info createReminder;
  55. }
  56. return response;


Team responsiveness and operational clarity are critical, and automated booking alerts create a measurable impact. Businesses managing a scalable client base and operating on appointments cannot afford delays in information. Every booking that goes unnoticed is a missed chance to respond and deliver.

This custom solution brings real-time Zoho booking data into the Cliq communication layer, effectively filling the gap, letting teams stay coordinated, respond faster, and deliver a consistently better experience to every customer.

If you have any further questions or need support, please reach out to support@zohocliq.com, and we'll be happy to assist you.

      Zoho Campaigns Resources


        • Desk Community Learning Series


        • Digest


        • Functions


        • Meetups


        • Kbase


        • Resources


        • Glossary


        • Desk Marketplace


        • MVP Corner


        • Word of the Day


        • Ask the Experts


          • Sticky Posts

          • Add Claude in Zoho Cliq

            Let’s add a real AI assistant powered by Claude to your workspace this week, that your team can chat with, ask questions, and act on conversations to run AI actions on. This guide walks you through exactly how to do it, step by step, with all the code
          • 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
          • Zoho Cliq REST APIs v3 : A complete guide to what's changed and why 

            APIs are not just consumed by a developer with numerous automations and a series of open browser tabs. They are parsed by LLMs, fed into agent pipelines, and auto-completed by AI coding assistants that have zero tolerance for inconsistency. A verb tucked
          • 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
          • Automating Real-Time Zoho Bookings Alerts in Zoho Cliq

            Enable your teams to respond in seconds by bridging the gap between booking confirmation and team notification. No sticky notes, no calendar nudges and no follow-up frenzies. For businesses that rely on scheduled appointments, real-time visibility is

          Zoho CRM Plus Resources

            Zoho Books Resources


              Zoho Subscriptions Resources

                Zoho Projects Resources


                  Zoho Sprints Resources


                    Zoho Orchestly Resources


                      Zoho Creator Resources


                        Zoho WorkDrive Resources



                          Zoho CRM Resources

                          • CRM Community Learning Series

                            CRM Community Learning Series


                          • Tips

                            Tips

                          • Functions

                            Functions

                          • Meetups

                            Meetups

                          • Kbase

                            Kbase

                          • Resources

                            Resources

                          • Digest

                            Digest

                          • CRM Marketplace

                            CRM Marketplace

                          • MVP Corner

                            MVP Corner




                            Zoho Writer Writer

                            Get Started. Write Away!

                            Writer is a powerful online word processor, designed for collaborative work.

                              Zoho CRM コンテンツ



                                ご検討中の方

                                  • Recent Topics

                                  • CRM Address Field - States with Countries in brackets

                                    Hi, Could you please remove the country in brackets from the Global State List, or at least allow us to edit these entries? It looks like the brackets were added during the initial data population, perhaps by someone building the list in a spreadsheet
                                  • What's New in Zoho Inventory | July & August 2026

                                    Hello users, The July and August 2026 releases bring a range of new features and improvements across the product. From the Nigeria Edition and Super Admin enhancements to Sri Lanka IRD-compliant invoicing, Loyalty Program Management, and improvements
                                  • Forms data export bug

                                    The export csv with a password has changed for the worst. It is less secure by not allowing complex passwords. Just last week and the last year (at least) I was able to use a complex, secure password. Export CSV moreover doesn't even work if I use a simple
                                  • Fax and email questions

                                    Does Zoho offer faxing capability? If so, how to do it? And, why is has my email inbox stopped in 2019? There are no more emails since then. Also if I delete all of those emails, will they delete it from my gmail account (I'm linked to a gmail email address).
                                  • Create a single record from multiple images with ICR

                                    Hello all, Zia's Intelligent Character Recognition can now create a single record from multiple images. Users can upload up to three images at once, such as an ID, a passport, and a business card, and Zia will extract the relevant information from all
                                  • How to present an Analytic on a CRM dashboard and filter it on loginuser id

                                    How to present an Analytic on a CRM dashboard and filter it on loginuser id? I want to display an Analytics pivot table (as a widget) on a CRM dashboard and have the pivot filtered on the loginuser. I want additional user-filters available, such as date,
                                  • CNIL - Suivi de Pixel

                                    Bonjour à tous, À la suite de la nouvelle recommandation de la CNIL sur les pixels de suivi dans les e-mails, savez-vous si Zoho Campaigns permet : de conditionner le suivi des ouvertures au consentement de chaque contact ; de proposer un lien permettant
                                  • Convert MBOX to PST File Using Free Methods

                                    MBOX is a mailbox format that is used by various email clients and services, such as Thunderbird, Apple Mail, Eudora, and Google Takeout. Yet, in order to be able to open your MBOX emails in Microsoft Outlook, you have to convert them from MBOX to PST
                                  • Live connection to DS files in Zoho Creator / ChatGPT

                                    As an idea, we are using ChatGPT to build with Zoho Creator (outside of Zia), which is works brilliantly to assist write deluge, provide test suggesitons etc. Currently we are uploading the DS files which are very point in time, it would be great to have
                                  • Setting default From address when replying to request

                                    At the moment, if I want to reply to a request, the From field has three options, company@zohosupport.com, support@company.zohosupport.com, and support@company.com. The first two are really internal address that should never be seen by the customer and
                                  • Zoho Payroll: Product Updates - Q3, FY2026

                                    Over the past quarter, Zoho Payroll has added several updates to make payroll easier to process, configure, and manage. The most notable improvements cover bank integrations, reimbursement support, payslip enhancements, employee exit documentation, payroll
                                  • Convert OLM to PST on Mac and Windows Using Free Methods

                                    When your Outlook for Mac data is stored in an OLM file and you want to use it with Outlook for Windows, the simplest approach to transfer your emails and other mailbox information is to convert the OLM file to a PST file. OLM is primarily associated
                                  • Add Payment Information (like Bank details)

                                    I am using the Free plan of Zoho Books. I need to add the bank details/ UPI details on the invoice. How can I do that. I have added the details in the Bank Section.
                                  • Placeholders for Multi-Level Discount

                                    I am using custom templates for Invoices and all other modules. Since i have activated multi-level discount (an early-access feature from zoho) "discount at line-item and transaction level", I need placeholders for using them in my custom templates. With
                                  • Running Balance

                                    Please add automatically Running balance in ledger view. Taking lot of time, every time to add manually
                                  • Accounting on the Go Series-47: Effortless GSTIN Management- Auto Populate TaxPayer Details in Zoho Books Mobile App

                                    Hello everyone, Welcome back! Today, we're focusing on a feature specifically designed for our Indian users in the Zoho Books-Indian edition, particularly those who deal with GST compliance regularly. We understand the importance of accurate and efficient
                                  • URGENT: Stalled DC Migration >72 Hours - Records Locked [Ticket #: 167813877

                                    The DC migration was started on 1st October at 6 pm and we were informed migration period as 48 hours but even after more than 72 hours, the migration seems still in progress. We sent two emails to check the status but no responses. We need the migration
                                  • Zoho Webinar - Sharing System Audio (NOT AVAILABLE)

                                    Hi, We are having a serious problem with Zoho Webinar. In the webinars we run, we very often share the audio from a video we are streaming directly from YouTube or other applications. Until recently we were using Zoom, but as we use other Zoho applications
                                  • Cash Recipt

                                    You can not receive cash more than 10000 from one party in a day and two lakh in a year. In statement you can't differentiate cash or bank receipt. zoho does not support this
                                  • Need to set workflow or journey wait time (time delay) in minutes, not hours

                                    Minimum wait time for both Campaigns workflows and Marketing Automation journeys is one hour. I need one or the other to be set to several minutes (fraction of the hour). I tried to solve this by entering a fraction but the wait time data type is an integer
                                  • Concern Regarding Stock Validation in Inventory Management

                                    Hi Zoho Team, We would like to highlight a concern regarding stock validation in the inventory system. As per standard inventory management practices, if the stock level is zero, the system should not allow users to create a shipment, packing slip, or
                                  • Change from OST to PST on Windows 10/11 Using Free Method

                                    There is an advantage in converting OST files to PST format if you need to access your Outlook data on a different computer, want to keep a local copy, or are trying to recover items from an old Outlook profile. The good point is that users of Windows
                                  • Meet PageHealth by Zoho PageSense: a free way to find out what's holding your page back

                                    We all know the feeling. You've spent days tweaking headlines, moving buttons, and rewriting copy, and you're still not sure why visitors aren't sticking around. Revamping your website is hard, and figuring out what's actually getting in the way is even
                                  • Important: Whitelist new proxy outgoing IPs for IN, SA, and UAE data centers

                                    Hello everyone, We're expanding the pool of proxy outgoing IP addresses for our IN, SA, and UAE data centers by introducing new IPs alongside the existing ones. This helps ensure high availability, optimal load distribution, and redundancy for outgoing
                                  • Zoho Flow Custom Function Issue

                                    I have a use case where I will be needing to post data to a wordpress site. Specifically to a custom post type with a bunch of ACF fields. I have setup trigger event correctly for Tookan and can receive data from the webhook. In order to post the data
                                  • How to Open .mbox file in Gmail with Attachments?

                                    Gmail offer users to backup INBOX folder in .mbox file format via Google Takeout Feature. Howver there is no such option to Restore Gmail MBOX. Thus I would like to suggest you to choose an alternate approach i.e. MBOX to Gmail Wizard. This utility will open .mbox file in Gmail with attachments.  Steps to open MBOX file in Gmail are; Run MBOX to Gmail Wizard Click Add File and add .mbox file. Enter your Gmail login credentials. Click Convert button. Finished! This is how you can open MBOX file in
                                  • Custom Validation for On Duty

                                    Hi Team, We would like to have custom validation support for the On Duty form in the Attendance module. We need to apply some restrictions, such as: Limit the number of On Duty requests per month. Restrict On Duty requests on selected days. Allow employees
                                  • Integrating FaceBook Ads into MarketingHub

                                    I would like to track the clicks from a FB Ad campaign into my website via marketinghub.  I cannot currently add a MH form directly to my FB page, as I receive an error telling me I need at least 2000 subscribers on FB to be allows to do that (yikes!) What is the best way to set up MH so I can track which FB are converting well?  I know I can reach the FB reports directly, but these do not track conversions from the MH forms on my website. Best regards, Joe
                                  • Migration from GoDaddy to Zohomail

                                    Hi All, I am trying to migrate all the emails from Go Daddy to zohomail account using the migration tool. i tried with imap method, its not working. when i try it with pop method, then only the emails from the go daddy account inbox ( not other folders), is getting transferred, how can i transfer all the folders in the email account from go daddy to zoho. and also the emails which are coming from go daddy are like new unread emails ( is there any where i can differentiate from read and unread emails)
                                  • How do I migrate from Office 365 to Zoho Mail?

                                    Check out Advik Email Migration Wizard, this software is specially developed to move mailboxes from Office 365 to Zoho Webmail. In addition you can migrate from Gmail, Yahoo, Rediffmail and 80+ webmail servers to ZOHO MAIL. Isn't it amazing? This is an all in one email migration solution. Steps to export emails from Office 365 to Zoho Webmail are as follows; Run Advik Email Migration Tool in your system. Select Office 365 as source and enter its login credentials. Select mailbox folders and choose
                                  • How to Backup Zoho to PST?

                                    I'm looking for a simple way to backup Zoho Mail emails to PST format. I tried the IMAP method with Outlook, but it seems slow and complicated for large mailboxes. I need a solution that can: Export Zoho emails to PST Preserve attachments and folder hierarchy
                                  • Shopify connector – product cost ("Cost per item") not synced, so COGS/gross margin can't be calculated

                                    Hi Zoho Analytics team, I use the native Shopify connector in Zoho Analytics (cloud) to build reporting dashboards for Shopify stores. As far as I can tell, the connector does not sync product cost, so there's no way to calculate Cost of Goods Sold (COGS),
                                  • Zoho Sprints - Q3 Updates for 2026

                                    Another quarter, another set of productive features. This time our focus was mainly to simplify in-app navigations and control all your work related activities within Zoho Sprints. We delivered 7 major features and 9 enhancements, which include Zoho Sprints
                                  • Which Zoho CRM tasks would you want an AI assistant to handle?

                                    I’ve started delegating my Zoho CRM work to AI – and many tasks now take me half the time. It has been so useful that we’re now working to make it available to everyone. Instead of clicking through records and tabs, I simply describe what needs to be
                                  • The Social Wall: August 2024

                                    Hi everyone, We're thrilled to bring you the latest updates, features, and improvements to help you get the most out of Zoho Social. Let's see what was new for us at Social in August. Post documents on LinkedIn You can now reach a lot more people and
                                  • Free PST Password Recovery Tool

                                    Recoveryfix PST Password Recovery is a specialized standalone utility designed to instantly unlock encrypted Microsoft Outlook PST files . It provides an efficient way to recover, reset, or entirely remove passwords when access credentials are lost or
                                  • How can I add a Custom Field (or Customer_name) to a picklist?

                                    Our workflow is Shopify-->SO -->Picklist-->Package-->Shipment. We would like to have the Picklist template to include a custom field "Customer_Notes" (we have created this field already). This way we get alerted when a customer has notes on their account.
                                  • Cash Flow Statement : Direct Method

                                    I can not see how can I see the cash flow statement using direct method. AS 3 recommends two formats of cash flow statement. The indirect method is there on Zoho but there report in Direct method. How can I see that by Direct method.
                                  • ZeptoMail is now Zoho CPaaS!

                                    ZeptoMail has a new name and it’s expanding beyond email. With ZeptoMail, our focus was simple : help developers and businesses with reliable transactional emails. At the time, email handled a big part of those customer moments. But transactional communication
                                  • Button Display Conditions

                                    Hi Guys, Is it at all possible to have extra button conditions? Context: We have data in our deals module which has a custom button which converts the deal into contacts + set up relationships between them. At the end of the conversion we set a field
                                  • Next Page