Hello everyone,
Welcome back!
ZDK CLI uses commands to manipulate with Zoho CRM metadata from a terminal. While Zoho CRM Web UI remains the primary tool for manipulating Zoho CRM metadata like creating modules, configuring fields/layouts etc., using
ZDK CLI has its own advantages. In this post, we will explore scenarios where each option excels, empowering developers and administrators to make informed decisions as per their requirements. Let's dive in!
Smith, a consultant at TechSolutions Inc. (a Zoho CRM Partner), is enhancing the Deals module for Springfield University, to align it with their admissions workflow. Springfield University is using customized Zoho CRM for learning management system (LMS). The Deals module now tracks student enrollment stages ( "Application Received," "Scholarship Review," and "Admission Offer Sent") instead of the sales pipeline. To support this, Smith needs to add a custom field like “Financial Aid Status” to the Deals module.
Should he use Zoho CRM UI or ZDK CLI?
For simple changes like adding this field, Smith would use the Zoho CRM UI—it’s faster. But this raises the question-
When does a customization demand use of ZDK CLI?
The answer becomes clear with Smith’s next project: customizing Zoho CRM for Brookside University. He has to create customizations for Student Management, Course Management, Admissions, Finances, etc., which takes days or even weeks. If Smith were to use the Zoho CRM UI , he has to navigate through multiple tabs in the setup and creates them one by one. When his customization is done in the sandbox, he completes testing it and deploys it to the sandbox environment. Smith designs a Student Dashboard Widget that displays a student’s academic progress, attendance, extracurricular activities, and advisor notes in one place. For creating the widget, he uses the ZET CLI tool in terminal and after development he packages it separately and upload it to Zoho CRM.
If Smith opts for ZDK CLI to build the customizations, he can create modules, fields, layouts, roles, and profiles directly from the terminal. He can use ZET commands in ZDK CLI project directory for developing the widget and can add the widget to the Zoho CRM through ZDK CLI.
By leveraging ZDK CLI alongside Version Control Systems like Git or Mercurial, Smith along with his team mates ensures every customization is traceable. Git logs resolve disputes like “Who modified the Admissions pipeline?”. Using ZDK CLI with VCS facilitates team collaboration. One team member can build up on another team member's work.
Riding on the success wave of Brookside University’s LMS integration, Smith’s firm, TechSolutions Inc., now needs to replicate the same Zoho CRM customization for their next project. Without ZDK CLI, Smith would have to do it all over again: manually rebuilding every module, field, and widget through the UI.
With ZDK CLI, the effort required is minimal.
- Using zdk org:export command, Smith can export the metadata of Brookside University.
- He can use the exported files and "tweak" them to suit the needs of his new project.
- Using zdk org:push command, he can deploy the refined configuration to the new environment.
ZDK CLI transforms CRM customization from a manual process into a repeatable strategy—ensuring TechSolutions Inc.’s growth.
When to Use ZDK CLI
- Bulk Metadata Management: You can use ZDK CLI to pull the metadata from one organization which has metadata customizations for LMS, make minor changes, and deploy it for a different CRM organization which needs customizations for the same.
- Version Control of metadata changes: With ZDK CLI you can use Version Control Systems like Git/Mercurial to track and manage metadata changes made by different team members, clearly showing who made updates and when, enabling transparency. This also makes it easy to revert changes if issues arise.
- Collaboration - Reuse Components: Using ZDK CLI you can easily export your local metadata changes with zdk org:export, which creates a zip file of the the crm directory in your local ZDK CLI project. You can share this zip file with your fellow developers to collaborate seamlessly by building on each other’s work. You can also achieve the same using VCS. Checkout our previous Kaizen post on using ZDK CLI with git: Leveraging ZDK CLI with VCS to reuse components across different Zoho CRM org.
- Widget Development: You can create and update widgets via CLI commands.You can use ZET commands in ZDK CLI project directory and widgets can be added to your organization from the terminal itself without the need of packaging the widget.
- Automate commands: You can automate ZDK CLI commands using scripts, reducing manual intervention. Take a look at this Kaizen post where we discuss a shell script designed to automate the process of pushing locally modified metadata along with conflict management.
- Conflict Resolution: Conflict resolution in ZDK CLI guarantees that changes done does not get accidentally overwritten. Resolve merge conflicts with zdk org:pull:resolve, which opens a browser-based diff editor to reconcile code differences.
Best Practices
- Use ZDK CLI for development in sandbox environments and the Web UI for minor fixes and to deploy it to Production environment.
- Pull configurations via CLI (zdk org:pull) before major edits to maintain a backup.
- For developing widgets zet commands along with ZDK CLI commands in the terminal.
- Refrain from making simultaneous changes via Web UI and ZDK CLI to prevent conflicts.
- If you are unfamiliar with a command, use zdk help command for to check the description of the command.
- Though ZDK CLI lacks the visual simplicity of the Web UI, pairing it with IDEs like VSCode improves its usability.

For the current beta release, ZDK CLI will exclusively be available for Sandbox environment and will not be operational in Production environments.
We hope you found this post useful. We will meet you next week with another interesting topic!
If you have any questions, let us know in the comment section.
Happy Customizing!
Recent Topics
Set to Review for all
We are testing the use of Writer as part of an internal review process for statement of work documents and have found that when the document is changed from Compose to Review by one person, that is not reflected for all others who view the document. Is
I NEED MORE CUSTOM FIELDS!!!
Why can I only have 60 custom fields! It's not enough. I want another 100 extra custom fields to do what's necessary for my business! I'm sure I can't be the only one with this problem!!! How hard would it be to fix this? Just fix it for me please at least!
How to copy value from a single line field into a picklist field within a module's subform?
Hello there, I have a single line field in a module's subform. I would like the value in the field to automatically update a picklist field within the same subform (both have items with the same names). Is this possible via function? Unfortunately, workflows
Implementing a Self-Invoicing/Vendor Portal in Zoho Creator
Hello Zoho Community / Creator Experts, We would like to build a Self-Invoicing Portal (Vendor Portal) in Zoho Creator for our external contractors. Our goal is to allow approved contractors to log in, submit their invoice details (hours worked, project
Categorise Attachments
We take ID, proof of address, right to work documentation and more. I can upload a single file in to field, but we often receive multiple files for each category e.g. someone may send a separate file for the front and back of their national ID card. My team don't have time to manipulate the files in order to upload them as a single file. The options, as far as I can tell, would be to create additional fields on attachments in order to categorise what the file is, or to be able to upload single
Blocked Email
We are a Zoho One subscriber and use Yahoo as our MX provider. A few times each year, for the past four years, CRM blocks one or more of my Zoho One users from receiving internal email from CRM. This includes "@mentions" in all modules, and emails from
Able to change project on timelog entries
Ability to move the timesheet entry from one project to another. When a user adds a wrong entry a manager can change/update the timesheet entry to the correct project.
What formula to use in computing total hrs and decimal hrss
So , my data includes log im column , 2 breaks with 2 columns that says back and lunch and 1 column that says back and logged out. What formula should i use to be able to automatically have my total hours as I input time in each column? Thankyou
i cannot use <b></b> to bold the message in Creator C6!!!!???What?
Dear experts and friends, Now Creator 6 blocking us from using <b></b> Anyone facing this issue? I faced it on Creator C6 Previously, it used to work. Now failed to work. Faint~ Seek guidance from everyone on how to bold the message. The super simple
Add additional field to quick search results
IN the advanced search, we can add any field to the columns. In the regular search results (before you press enter, there is no option to modify the results. It would be super useful to include a custom field where it currently displays the pipleine
Knowledge base: The nitty-gritty of SEO tags
A well-optimized knowledge base with great SEO can benefit your company by allowing customers to find help articles and support resources using search engines. This enables customers to quickly and efficiently find the information they need without direct
Content Security Policy
Is there a place in ZOHO CRM to add a Content Security Policy to allow for a call to a google.com map, from inside our current app? Or, how do I resolve the issue below?? jquery.js:1 Refused to load the script 'https://maps.google.com/maps/api/js?v=3.41&libraries=places&sensor=true&key=AIzaSyAyQzKeKSbLci4LwZhn9oXvtCkbUo1Ae4g&callback=map_loader'
Option to select location?
As a business coach, I meet with clients at various public locations. I have two or three pre-determined locations that I meet at. I would like the client to choose the location when booking an appointment. Is there a way to do that with a single service, or is the best way to accomplish this by creating one service for each location offered?
Retainer invoice in Zoho Finance modlue
Hello, Is there a way of creating retainer invoices in the Zoho Finance module? If not can I request this is considered for future updates please.
Unified WhatsApp Number Management in Zoho Desk and SalesIQ
Dear Zoho Desk Support Team, We are currently utilizing both Zoho Desk and Zoho SalesIQ for our customer support operations. While both platforms offer WhatsApp integration, we are facing challenges due to the requirement of separate WhatsApp numbers
Provide a standard structure to your content using article templates
Hello everyone, When multiple writers work on different documents, maintaining a standard structure can be challenging as each of the writer follows a different writing style. However, when the structure, tone, and format of every document is different,
How to update custom multi-user field in Zoho Projects?
I'm trying to update custom multi-user fields in Zoho Projects via a Deluge function in CRM. The code I have so far is below. It works for updating standard project fields and single-line custom fields, but it does not work to update multi-user fields.
Accessibility Spotlight Series - 1
Every user interacts with products differently, what feels intuitive to one may be challenging for another. Addressing this, accessibility is built into Zoho Project's design philosophy. This helps users navigate and perform actions with ease irrespective
Projects Tasks Not Showing Dependencies
I'm clicking on tasks and the popup to add dependencies isn't showing. I can't disconnect the nodes either. For some reason when I slide a task backwards it says it cannot go before a predecessor, even though there is not predecessor. Double clicking
Deprecation of C4 endpoint URLs
Note: This post is only for users who are still using the C4 endpoints. Hello everyone, At Zoho Creator, we're committed to continuously enhancing the security, performance, and capabilities of our platform. As part of this ongoing effort, we'll be deprecating
Introducing AWS authentication for connections in Deluge
Hello everyone, We're incredibly excited to announce the all-new AWS authentication for connections in Deluge! This highly anticipated feature simplifies connecting to Amazon Web Services, opening up a world of possibilities and allowing you to seamlessly
Timeline Tracking Support for records updates via module import and bulk write api
Note: This update is currently available in Early Access and will soon be rolled out across all data centers (DCs) and for all editions of Zoho CRM. The update will be available to all users within your organization, regardless of their profiles or roles.
Bug Report and Suggestions for Improvement in Zoho Applications
Hi Zoho Team, I’d like to report a few bugs and improvement suggestions I’ve noticed while using Zoho products: Zoho Cliq Video Call: The camera sometimes turns off automatically during video calls. This seems to be a bug — please check and fix it. Zoho
Customize User Invites with Invitation Templates
Invitation Templates help streamline the invitation process by allowing users to create customized email formats instead of sending a one-size-fits-all email. Different invitation templates can be created for portal users and client users to align with
ListObjects is recognized by VBA
Sub addNewRow() Dim ws As Worksheet ' Set your worksheet name Set ws = ThisWorkbook.Sheets("Invoice") ' Set your table name (change "Table1" to your actual table name) ws.ListObjects("InvItems").ListRows.Add End Sub I am getting Unknown function: Li
KPI Widget dashboard select periods
I have a problem with selecting periods as a user filter. In the beste scenario I would like to have to have a period filter like Google Analytics has of Datastudio (see attachment). In the KPI widget I "Group by "inquiry_date" on week&Year". It selects
Need a way to secure Prefill URLs in Zoho Forms (hide or encrypt prefilled values)
Hi everyone, I often use Zoho Forms with prefilled URLs to simplify the user experience — for example: https://forms.zohopublic.com/.../form?Name=David&Amount=300 However, the problem is that all prefilled values are visible and editable in the link.
Can’t send emails from Zoho CRM after adding a new user — verification codes not received
Hi everyone, We recently added a new user to our Zoho CRM account and purchased an additional license. Since then, we haven’t been able to send any emails from Zoho CRM. Our Zoho Mail accounts are working perfectly, we can send and receive emails directly
Can I add Conditional merge tags on my Templates?
Hi I was wondering if I can use Conditional Mail Merge tags inside my Email templates/Quotes etc within the CRM? In spanish and in our business we use gender and academic degree salutations , ie: Dr., Dra., Sr., Srta., so the beginning of an email / letter
CRM for email in Outlook: how to ignore addresses?
We’re using the "Zoho CRM for email" add-in for Outlook. When opening an email, the add-in displays all email addresses from the message and allows me to add them to the CRM or shows if they’re already contacts. However, sometimes people listed in To
Scheduling Calls in CommandCenter / Blueprints
I would love it if you could add a function to schedule a call in the lead's record for a future date. I know you can add a Task by going to Instant Actions > Task and completing the form: These tasks go into the lead's record under Open Actions. But
Workflow Creation with Zia gets stuck
It gets stuck here:
Quickly send emails and sync conversations with custom email addresses in CRM
Editions: All editions DCs: All DCs Release plan: This enhancement has been released for customers in all DCs except IN and US. We will be enabling it for IN and US DC customers soon. [Update on 22 May 2024] This enhancement has been released for all
Zoho製品と生成AIツールの活用について
いつもありがとうございます。 弊社では、Zoho Oneを契約し、CRMを軸として、見込み客の管理から商談、その後の受注や請求の管理、サポート業務(Desk)、業務データのレポーティング(Analytics)などを行っております。 Zohoサービス自体には、Ziaというツールが搭載されているかと存じますが、それ以外の外部の生成AIツールと連携した活用などもできるのでしょうか?具体的には、CopilotなどがZohoに登録されているデータや情報を見て、対話型で必要なデータを提示してくれたり、商談や蓄積されたメモなどを分析してユーザが知見を得られるような活用ができないか、と考えております。
File Field Validation
Hello all, We are tracking our customer NDA agreements in our CRM and have created 2 fields to do so, an execution date field and a file upload field. I want to create a validation rule to ensure that when the execution date field is populated that the
Work with Contacts who use multiple Emails / Manage obsolete Email addresses without loosing Emails in Context
Hello List Work with Contacts who use multiple Emails Only after 1 week in using Zoho CRM productively we have contacts which randomly use 2 different email addresses. From the concept I've understood that Zoho CRM offers two email fields which are recognized
New Field in CRM Product Module Not Visible in Zoho Creator for Mapping
I created a new single-line field in the Products module in Zoho CRM. Zoho CRM and Zoho Creator are integrated, but the newly created field in CRM is not visible in Zoho Creator when I try to map fields.
Send WhatsApp voice messages from Bigin
Greetings, I hope all of you are doing well. We're happy to announce this enhancement we've made to Bigin. Bigin's WhatsApp integration now supports audio messages, so you can record and send voice messages. This makes it easier to handle customer questions
Microsoft Teams now available as an online meeting provider
Hello everyone, We're pleased to announce that Zoho CRM now supports Microsoft Teams as an online meeting provider—alongside the other providers already available. Admins can enable Microsoft Teams directly from the Preferences tab under the Meetings
I want to subscribe 1 professional user but the email only 250 per day?
When I subscribe 1 professional user, I am only able to send 250 email per day? So less? Or is it typo, 2500 rather than 250? Any sale agent or friends can clear my doubt? Thank You
Next Page