Client Script Support for Custom Buttons

Client Script Support for Custom Buttons

Hello everyone!

We are excited to announce one of the most requested features - Client Script support for Custom Buttons. This enhancement lets you run custom logic on button actions, giving you greater flexibility and control over your user interactions. This support is now available across all DCs.

Custom Buttons enables you to extend your Zoho CRM and perform a predefined set of actions based on your requirements.

What you can do with this new capability?

With Client Script support for custom buttons, you unlock a whole new level of control, interactivity, and speed within Zoho CRM. Here is what this powerful enhancement enables:

  • Trigger record-specific logic instantly, based on where and what you're viewing.
  • Auto-fill fields and suggest values intelligently for faster input.
  • Cut down clicks and complete tasks faster with in-context buttons.
  • Run guided multi-step flows that adapt to user input.
  • Prompt users for confirmation before taking action - prevent mistakes and keep control in their hands
  • Dynamically control a field’s visibility and properties, such as mandatory status, read-only state, and more
  • Act in place - no tab-switching, no disruptions, just smooth execution and much more
How to configure this new capability?

You can now create a custom button and add Client Script for the created button by following these steps.

  • Go to Setup → Modules and Fields under Customization.
  • Select a Module (e.g., Leads, Deals).
  • Click on Buttons → Then click + New Button.
  • Enter Button Name and select Action Type as "Client Script"
  • Choose Button Position and Layout details.
  • Click Create in Configured Client Script, enter the script, and click Add.
  • Select the profiles for which these buttons should be visible.
  • Click Save.

Note

The Client Script you intend to link with the button will be saved only after the custom button is saved.


Details of Custom Button Configuration with Client Script

  • Event Type - Button
  • Event Name - onClick
  • Argument - context

    The context differs based on where the button is placed.



Let's explore how to implement this through the following use cases.

Use case 1: Add Notes instantly from List View or Bulk push notes to multiple records with a click!

Zylker’s sales team often needs to add notes while reviewing or after campaigns. Currently, they must open each record individually, making the process slow and inefficient. To streamline this, the admin wants to:

a. Include an "Add Notes" option directly from the List View for individual records, allowing sales reps to add notes without opening each record.

b. Add a "Add Bulk Notes" option, allowing users to select multiple records and add a common note to all selected records at once.

a) Here is the implementation of "Add Notes" in the List Page.



b) Here is the implementation of "Add Bulk Notes" in the List view page.



Use case 2 : Import product details effortlessly from Zoho Sheet and populate the Subform with a single click!

Zylker manufactures medical instruments, and its sales representatives manage bulk orders from distributors and hospitals. Product details are typically provided in a sheet, which the sales reps must manually enter into the subform on the Order Creation Page(Create Page). To streamline this time-consuming process, the admin wants to add a custom button named "Import Products" to the Order Creation Page. When clicked, it should
  • Prompt for the Sheet ID.
  • Fetch order details (product names, quantities, and prices) from the specified Zoho Sheet.
  • Populate the Product list Subform in Zoho CRM.




    Code Sample link
Use case 3 - Send bulk emails to selected students directly from the Course Module's Related List with ease!

Zylker’s managers often need to reach out to multiple students enrolled in a course - whether to share updates, newsletters, or important announcements. Currently, they have to open each student record individually to send an email, which is time-consuming.
To simplify this process, the admin wants to provide a "Send bulk mail" option in the Student Related List under the Course record, allowing managers to select multiple students and send a personalized email to all selected students in one go.




Note

  • Client Script can be configured only from the Buttons page. The setup page displays existing scripts. Once a script is created, it can be edited and updated from the Client Script setup page.

  • Mobile support will be available in Q3, 2025.

This support will be rolled out soon. We hope you find this incredibly beneficial!






Happy Client Scripting! 

    • Sticky Posts

    • Kaizen #197: Frequently Asked Questions on GraphQL APIs

      🎊 Nearing 200th Kaizen Post – We want to hear from you! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
    • Kaizen #198: Using Client Script for Custom Validation in Blueprint

      Nearing 200th Kaizen Post – 1 More to the Big Two-Oh-Oh! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
    • Celebrating 200 posts of Kaizen! Share your ideas for the milestone post

      Hello Developers, We launched the Kaizen series in 2019 to share helpful content to support your Zoho CRM development journey. Staying true to its spirit—Kaizen Series: Continuous Improvement for Developer Experience—we've shared everything from FAQs
    • Kaizen #193: Creating different fields in Zoho CRM through API

      🎊 Nearing 200th Kaizen Post – We want to hear from you! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
    • Client Script | Update - Introducing Commands in Client Script!

      Have you ever wished you could trigger Client Script from contexts other than just the supported pages and events? Have you ever wanted to leverage the advantage of Client Script at your finger tip? Discover the power of Client Script - Commands! Commands
      • Recent Topics

      • Add Webhook Response Module to Zoho Flow

        Hi Zoho Flow Team, We’d like to request a Webhook Response capability for Zoho Flow that can return a dynamic, computed reply to the original webhook caller after / during the flow runs. What exists today Zoho Flow’s webhook trigger can send custom acknowledgements
      • Triggering Zoho Flow on Workdrive File Label

        Right now Im trying to have a zoho flow trigger on the labeling/classification of a file in a folder. Looking at the trigger options they arent great for something like this. File event occurred is probably the most applicable, but the events it has arent
      • Bidirectional sync between Zoho Bookings and Zoho CRM - Part 1

        Hey, community members! The default integration between Zoho CRM and Zoho Bookings is unidirectional, which means that any appointments booked, rescheduled, or deleted in Zoho Bookings will be reflected in Zoho CRM. However, any modifications made to
      • Is it possible to edit placeholder text?

        In the master slides I want to make sure my templates have more meaning for the users and want to replace the standard placeholder text with something more instructional. Instead of "Click to edit Mast subtitle styles" I want to have "Click to enter reporting
      • Delay function execute

        I've got a workflow which uses a webhook to send information to Flow, which in return updates a record in Creator. Problem is, by the time this has executed, the rest of my script has run and can't find the (yet to be) updated info in the record. Is there
      • Refunds do not export from Shopify, Amazon and Esty to Zoho. And then do not go from Zoho inventory to Quickbooks.

        I have a huge hole in my accounts from refunds and the lack of synchronisation between shopify , Amazon and Etsy to Zoho ( i.e when I process a refund on shopify/ Amazon or Etsy it does not come through to Zoho) and then if I process a manual credit note/
      • How to allow download of a file AFTER information is collected?

        I can't find this anywhere. Can someone help with what seems to be a pretty basic web function today? - File is stored in Workdrive - Prospect goes to a URL where the file is located - System requests prospect to enter "Name" and "Email" - An email is
      • Email Reminders on Shared Calendars

        How do we turn off the setting that emails reminders to everyone who has accepted or declined a calendar invite? If 8 of us have been invited to the same meeting, we receive 8 notifications for every step of the process, from invitation to decision.
      • Bulk Fill In & Edit PO/Bill/SO/Invoice

        Hello, I am adding stock in bulk on a PO, the system is automatically populating the Rate (price) and Tax from the item data. Problem is that the bill rate is different from the rate on the item data, so I have to manually erase each and enter the price.
      • Fixed Assets beg balance

        Hello, I trust you are well I'm a new zoho books user and I find it difficult to plug in the fixed assets balance and here's what I have done: 1- I imported the fixed assets data into the fixed assets module as per the instructions 2- the import process
      • Syncing with Google calendar, Tasks and Events

        Is it possible to sync Zoho CRM calendar, task and events with Google Calendar's tasks and events. With the increasing adoption by many major tool suppliers to sync seamlessly with Google's offerings (for instance I use the excellent Any.do task planning
      • CRM Deluge how can link attach file with workdrive file.

        Hi, We have create file at workdrive and would like to link to attachment at crm module by deluge. Right now can only upload it to attachment but can not link the file from workdrive. Thank you
      • Feature announcement: AI-powered document generator in Zoho Sign

        Hi there! We recently announced manual document creation by offering an editor within Zoho Sign. Today, we are excited to announce AI-powered document generation to help you draft agreements, purchase orders, and other important business documents in
      • Permanently deleted files

        Is there a way to get back permanently deleted files from your account if they were accidentally deleted and no longer recoverable from the recycling bin? I know I am probably screwed but I just figured I would ask.
      • Shared Mailbox in iOS app

        Hi, On the desktop I am using a Shared mailbox for our company's general mailbox that somebody else should be able to view. In the iOS app however I can't find it? Old sources on the internet says this isn't possible but that can't be right? Somebody
      • Tip #41- Simplify Compliance and Efficiency with Zoho Assist’s Data Cleanup Feature- 'Insider Insights'

        Managing device data efficiently is just as important as securing remote access. With Zoho Assist’s Data Cleanup feature, admins can easily remove outdated or unnecessary device records, keeping the console organized and secure. This action is carried
      • Revenue Management: #6 Revenue Recognition in Professional Services Industry

        If you run a consulting firm, agency, or any service-based business, you have a situation where you have signed the contract, maybe even sent the invoice, and have received some initial payments. So, can you consider this as revenue? What if the project
      • This domain is not allowed to add. Please contact support-as@zohocorp.com for further details

        I am trying to setup the free version of Zoho Mail. When I tried to add my domain, theselfreunion.com I got the error message that is the subject of this Topic. I've read your other community forum topics, and this is NOT a free domain. So what is the
      • Zoho fsm scheduled maintenance dispatch

        Hi, I'm reaching out regarding an issue I'm encountering with the Scheduled Maintenance feature in Zoho FSM. I’m trying to configure it so that it automatically dispatches all maintenance jobs scheduled within the next 150 days, starting from today. However,
      • Template modifiactions

        Hello, I am struggling with the templates in ZOHO Books. Especially with the placement of some items, like company address, ship to, bill to etc.  For example: One item I like from template X (placement of ship to and bill to next to each other in the
      • zoho.inventory.getRecords returns no records

        I running a custom function (Deluge) in Zoho Flow with a connection to Zoho Inventory. To debug the problem, I created the test function below. It returns "Number of contacts fetched: 0". This confirms that there's no issue with the org ID or connection
      • How do I get Status History data of my Projects?

        I want to build a table in Zoho Analytics that Groups by Date, when Projects entered a certain status. I cannot find Status History or any such useful data available in the Setup of my Data Source sync. Please advise how I can achieve this?
      • Zoho Campaigns Event timestamps do not propagate to Zoho CRM

        We have integrated Zoho CRM and Zoho Campaigns. But when looking at Contact records, the Campaign event data is missing the actual timestamps: especially when a particular email was sent. They're not in the Campaigns related list, and the cannot be found
      • Feature announcement - Simplifying document creation with Zoho Sign

        Hi there, We are pleased to announce the release of our document creation feature, enabling you to create, edit, and finalize documents like agreements, purchase orders, and contracts without relying on external tools or applications. <br> This
      • Integrating File Attachments in Zoho Flow Email Notifications

        Hi, I would like to be able to send an email once an entry is made in a form, and in this email, I would like to attach a file that has been added to the form using the ImageUpload (or FileUpload) widget. So, I started by creating a flow that will trigger
      • CRM->INVENTORY, sync products as composite items

        We have a product team working in the CRM, as it’s more convenient than using Books or Inventory—especially with features like Blueprints being available. Once a product reaches a certain stage, it needs to become visible in Inventory. To achieve this,
      • Zoho Mail SMTP IP addresses

        We are using Zoho Mail and needs to whitelist IP for some redirections from your service to another e-mails. You can provide IP address list for Zohomail SMTP servers?
      • Zoho project purchases

        Hi Folks, I think having a purchase module in projects will help in putting together a project p and L. Project wise purchases and expenses.  Do let me know your thoughts.
      • Create Tasklist with Tasklist Template using API v3

        In the old API, we could mention the parameter 'task_template_id' when creating a tasklist via API to apply a tasklist template: https://www.zoho.com/projects/help/rest-api/tasklists-api.html#create-tasklist In API v3 there does not seem to be a way to
      • How can I restore all the deleted Time entries of a Task in Zoho Projects

        How can I restore all the deleted Time entries of a Task in Zoho Projects? Query: In Zoho Projects, I cloned a task and deleted the time entries from the cloned task. However, this also deleted the time entries from the original task. How can I restore
      • Is there a way to make an account inactive in ZoHo Desk

        We have a few Clients "Accounts" that we no longer do business with. It would be beneficial for them to not show up in lists. However, we want to go back and view tickets, time, etc.
      • How to set the value of the Phone field importing contacts in Zoho Desk

        Hi everyone, i'm new in Zoho Desk, we're setting up the environment and i'm importing contacts from another CRM using a file CSV and i'm getting a problem with phone numbers (italian): the leading zero is cut away, also if the value is inside double quotes.
      • Can we generate APK and IOS app?

        Dears, I want to know the availability to develop the app on zoho and after that .. generate the APK or IOS app  and after that I added them to play store or IOS store.. Is it possible to do this .. I want not to use zoho app or let my customers use it. thanks 
      • Set Custom Icon for Custom Modules in new Zoho CRM UI

      • Change total display format in weekly time logs

        Hi! Would it be possible to display the total of the value entered in the weekly time log in the same format that the user input? This could be an option in the general settings -> display daily timesheet total in XX.XX format or XX:XX.
      • Deprecation Notice: OpenAI Assistants API will be shut down on August 26, 2026

        I recieved this email from openAI what does it means for us that are using the integration and what should we do? Earlier this year, we shared our plan to deprecate the Assistants API once the Responses API reached feature parity. With the launch of Conversations,
      • How to center a field inside a section?

        I’ve been trying to center a field inside a section in Zoho Canvas. When I align it visually, it looks centered in the editor, but after clicking Save, the field appears misaligned on the actual canvas. I also tried setting the field to full width, but
      • Quick Create needs Client Script support

        As per the title. We need client scripts to apply at a Quick Create level. We enforce logic on the form to ensure data quality, automate field values, etc. However, all this is lost when a user attempts a "Quick Create". It is disappointing because, from
      • Kaizen #192 - Implementing Custom Token Persistence in Python SDK

        Welcome back to another week of Kaizen! Last week, we discussed how to implement Login with Zoho using OAuth 2.0 and saw how to bring it to life in a real-world application with the Zoho CRM Python SDK. We also discussed how Zylker Academy built a custom
      • Showing the map along with mileage expense

        When you use the GPS to track mileage, it shows you the map of the actual path travelled. It would be very useful and practical to save that map with the mileage expense, so that when the report is created, it provides a map of each mileage expense associated
      • Next Page