Building Extensions #5: Configuration setup while building extensions - Part 1

Building Extensions #5: Configuration setup while building extensions - Part 1

This series aims to equip developers with all they need to build extensions for Zoho Desk in Zoho Sigma and publish them in Zoho Marketplace.
 
With our series of posts so far, we have introduced you to our development environment setup (Sigma) to build extensions and the steps needed to upload them in Zoho Marketplace. This post will brief you on the configuration settings that are necessary while building extensions for Zoho Desk.
 
Extensions can either add a new custom feature to Zoho Desk that suits your business needs or integrate a third-party application with Zoho Desk. You may also use the advanced features provided within Zoho Desk to weave and craft sophisticated apps for Zoho Desk.
 
Regardless of the type of extension you may build, configuration details play an important role in them. The information needed to set up the extension should be added as a part of the configuration while building an extension. The location to load the extension widget within Zoho Desk, the authorized communication between Zoho Desk and third-party applications, and all the other required information are configured in the plugin-manifest.json file that is stored in the extension project directory.

Plugin-manifest 

The plugin-manifest file is included in the extension project directory by default. It has various keys included in it, each serving a unique function for configuring the extension. Let's explore the purpose of the keys that are included in the plugin-manifest file.

{

  "locale": [

    "en"

  ],

  "service": "DESK",

  "storage": false,

  "type": "personal",

  "whiteListedDomains": [],

  "modules": {

    "widgets": [

      {

        "location": "desk.ticket.detail.rightpanel",

        "url": "/app/widget.html",

        "name": "Desk Extension",

        "logo": "/app/img/logo.png",

        "icon": "/app/img/icon.png"

      }

    ]

  },

  "zohoAuthorisation": {},

  "connectors": [],

  "config": [],

  "moduleSupport": false

      }

locale

The details regarding the languages supported by the extension have to be specified here. All translation files need to be stored in .json format inside the "translations" folder of the extension's project folder.

service

This key stores the name of the Zoho product for which the extension is created.

storage 

At times, there may be a need for you to store data and use it whenever needed in your extension. This can be accomplished by enabling data storage for your extension. Set the value to "true" to enable the feature. It is disabled by default.

whiteListedDomains 

When you build an extension that integrates Zoho Desk with a third-party application, you will be invoking APIs. The domain names of these APIs have to be authorized by Zoho Desk and whitelisted to ensure a secure data transfer between the two applications.
 
Only whitelisted domains can be used to make an API call. Requests for domains that are not included in this key will be blocked. If your extension does not include third-party service requests, this key is declared as an empty array.

widgets

The details regarding widgets created for the extension are added to this key. An extension can have multiple widgets and the details can be added here as an array of objects. The following are the parameters that construct a widget object:
 
  • location: The information about where to load a widget needs to be added here. All locations where the widget could be loaded are predefined.  
  • url: The path of the widget's html file can be added here, either as a relative path (for internally hosted extensions) or an absolute path (for externally hosted extensions).
  • name: Name of the extension (displayed in the extension header)
  • logo: Path of the extension's logo (displayed in the extension header)
  • icon: Path of the extension's icon (displayed only on the widget chat bar and subtab)
Our next post will continue with the authorization part of configuration.
 
Stay tuned!


<<Previous                                                                                                                                   Next>>
      • Recent Topics

      • Power up your Kiosk Studio with Real-Time Data Capture, Client Scripts & More!

        Hello Everyone, We’re thrilled to announce a powerful set of enhancements to Kiosk Studio in Zoho CRM. These new updates give you more flexibility, faster record handling, and real-time data capture, making your Kiosk flows smarter and more efficient
      • Adding non-Indian billing address for my Zoho subscription

        Hey Need help with adding a non-Indian billing address for my Zoho subscription, trying to edit the address to my Singapore registered company. Won't let me change the country. Would appreciate the help. Regards, Rishabh
      • Move record from one custom module to another custom module

        Is it possible to create a button or custom field that will transfer a record from one custom module to another? I already have the 'Leads' module used for the Sr. Sales department, once the deal is closed they convert it to the 'Accounts' module. I would like to create a 'Convert' button for a custom module ('Locations') for the department that finds locations for each account. Once the location is secured, I want to move the record to another custom module called 'Secured Locations'. It's basically
      • Convert Lead Automation Trigger

        Currently, there is only a convert lead action available in workflow rules and blueprints. Also, there is a Convert Lead button available but it doesn't trigger any automations. Once the lead is converted to a Contact/Account the dataset that can be fetched
      • Notes Not Saving

        Hello,  My notes are continuously not saving.  I make sure to save them, I know the process to save them.  It is not operator error.  I go back into a Leads profile a while later and do not see the previous notes that I have made.  I then have to go back and do unnecessary research that would have been in the notes in the first place.  Not a good experience and it is frustrating.  Slows me down and makes me do unnecessary work.  Please resolve.   As a quick heads up, deleting cookies is not a fix
      • Prefill form with CRM/Campaigns

        I created a form in zForms and created prefill fields. I added this to the CRM and selected the fields so when sending from the CRM, the form works great. However, I want to use the same form in Campaigns and I want it to pull the data from CRM (which
      • Notes badge as a quick action in the list view

        Hello all, We are introducing the Notes badge in the list view of all modules as a quick action you can perform for each record, in addition to the existing Activity badge. With this enhancement, users will have quick visibility into the notes associated
      • Triggering a campaign automation from a Form

        I used Forms to create a lead form that is accessed by a button on my website. The field information flows into the CRM. However, I am trying to figure out how to use Campaign automations to start a workflow (series of campaign emails) that is triggered
      • Employee Appraisal Applicability - Why is Date of Joining Hard-Coded?

        In the new (to me, at least) Performance Appraisal Cycle wizard, it's possible to set criteria to determine for whom the appraisal process should apply. This makes sense on its face. However, one MUST use the Date of Joining criterion as a filter. Why
      • Formula fields

        Zoho People now supports formula fields. This post illustrates it. Formula fields are fields whose value is calculated instead of being entered by the user. Using this, number, decimal and date manipulations can be done. The value of this field could be numeric or date depending on the output of the formula. In date manipulations, the result will be given in milliseconds, which you can format as per you need. The operators we support are +, - , *, /. Formula fields get recalculated automatically
      • Copy paste from word document deletes random spaces

        Hello Dear Zoho Team, When copying from a word document into Notebook, often I face a problem of the program deleting random spaces between words, the document become terribly faulty, eventhough it is perfect in its original source document (and without
      • Is it possible to use module field filters via URL parameters?

        It would be really convenient if I could quickly link to a filter. For reference, this is the filter functionality I'm referring to: https://help.zoho.com/portal/en/kb/crm/customize-crm-account/advanced-filters/articles/advanced-filters For example: My
      • Transitioning FESCO Bill Project to Zoho Sheets and Integration Options

        Hello Zoho Support, I'm considering transitioning my FESCO bill project from Google Sheets to Zoho Sheets and wanted to know if there are integration options to seamlessly migrate our existing work. You can view our platform here, any guidance would be
      • Support for Custom Fonts in Zoho Recruit Career Site and Candidate Portal

        Dear Zoho Recruit Team, I hope you're doing well. We would like to request the ability to use custom fonts in the Zoho Recruit Career Site and Candidate Portal. Currently only the default fonts (Roboto, Lato, and Montserrat) are available. While these
      • Lightbox Pop-up form

        I would like to embed my form using the lightbox pop up. I don't want it to load automatically. I want it to load when some clicks the button. I can see this option, however when I use the "show pop-up launch button" on the website, the button automatically
      • Unable to remove the “Automatically Assigned” territory from existing records

        Hello Zoho Community Team, We are currently using Territory Management in Zoho CRM and have encountered an issue with automatically assigned territories on Account records. Once any account is created the territory is assigned automatically, the Automatically
      • Data Processing Basis

        Hi, Is there a way to automate the data processing for a candidate every time an application arrives from job boards, without requiring manual intervention? That is, to automatically acquire consent for data processing. I've seen a workflow that allows
      • Lightbox Pop-up form

        I would like to embed my form using the lightbox pop up. I don't want it to load automatically. I want it to load when some clicks the button. I can see this option, however when I use the "show pop-up launch button" on the website, the button automatically
      • Zoho CRM for Everyone's NextGen UI Gets an Upgrade

        Hello Everyone We've made improvements to Zoho CRM for Everyone's Nextgen UI. These changes are the result of valuable feedback from you where we’ve focused on improving usability, providing wider screen space, and making navigation smoother so everything
      • Customer Management: #5 Never Let the Customer Slip

        When Rahul started Knight's Watch Consulting, his focus was simple: deliver good work and keep clients happy. He offered one-time consulting projects, monthly advisory retainers and usage-based support for growing clients. Business was steady, and customers
      • 10GB Email Storage Limits in Zoho CRM

        We’ve had Zoho One for almost 5 years and have always synced our emails from Gmail via IMAP… As of late, we’ve run into issues with our emails not syncing, due to being over the 10GB storage cap… What’s very odd is that we haven’t changed a thing? I know
      • Zoho Projects Android and iOS app update: Mobile device permission based on user profiles

        Hello everyone! We have brought in support for mobile device permissions based on the user profiles which are configured in organization level. Administrators can now configure the permissions on the web app(projects.zoho.com) by following the steps mentioned
      • Good news! Calendar in Zoho CRM gets a face lift

        Dear Customers, We are delighted to unveil the revamped calendar UI in Zoho CRM. With a complete visual overhaul aligned with CRM for Everyone, the calendar now offers a more intuitive and flexible scheduling experience. What’s new? Distinguish activities
      • How to import data from PDF into Zoho Sheet

        I am looking to import Consolidated Account Statement (https://www.camsonline.com/Investors/Statements/Consolidated-Account-Statement) into zoho sheet. Any help is appreciated. The pdf is received as attachment in the email, this document is password
      • Multi-currency and Products

        One of the main reasons I have gone down the Zoho route is because I need multi-currency support.  However, I find that products can only be priced in the home currency, We sell to the US and UK.  However, we maintain different price lists for each. 
      • Unlocking New Levels: Zoho Payroll's Journey in 2025

        Every year brings its own set of challenges and opportunities to rethink how payroll works across regulations and teams. In 2025, Zoho Payroll continued to evolve with one clear focus: giving businesses more flexibility, clarity, and control as they grow.
      • Zoho Projects Android and iOS app update: Timesheet module is now renamed as 'Time Logs', delete option has been renamed to 'Trash'.

        Hello everyone! We have now renamed the Timesheet module as Time Logs and the delete option as 'Trash' on the Zoho Projects Android and iOS app. Time Logs Android: Time Logs iOS: Trash option Android: Trash option iOS: Please update the app to the latest
      • Zoho Mail app update: Manage profile picture, Chinese (Traditional) language support

        Hello everyone! In the latest version (v3.1.9) of the Zoho Mail app update, we have brought in support to manage profile picture. You can now set/ modify the profile picture within the app. To add a new profile picture, please follow the below steps:
      • Reminders for Article Approval

        Is there a way to send reminders for approvers to review articles and approve/deny them? I'm not seeing that option anywhere.
      • To print Multiple delivery notes in batches

        In Zoho Books, we can print a Delivery Note from an Invoice using the Print Delivery Note option, but it is non-editable and always prints all line items from the invoice. Our requirement is to deliver invoiced items in batches and print delivery notes
      • Add Full-Screen Viewing for Quartz Recordings in the Client Interface

        Hi Zoho Team, We would like to request an enhancement to the Zoho Quartz client interface when viewing submitted recordings. Current Limitation: When viewing a Quartz recording from the client (user) interface, there is currently no option to switch the
      • 2025 Recap: A Year to Remember | Zoho Inventory

      • Important Update : Pipedrive deprecated fields no longer supported in Zoho Analytics

        Dear Pipedrive users, We would like to inform you about a recent update related to your Pipedrive integration with Zoho Analytics. The Pipedrive team has deprecated certain fields from their application. You can find more details in the official Pipedrive
      • Product Updates in Zoho Workplace applications | November 2025

        Hello Workplace Community, Let’s take a look at the new features and enhancements that went live across all Workplace applications this November. Zoho Mail Format comments easily using Slash Commands With Slash commands, you can easily format text, insert
      • Right-Click Pipeline to Open in New Tab

        Please add the ability to right-click on a pipeline to open it in a new tab
      • Adjusting Physical Inventory

        Not getting very far with support on this one, they say they are going to fix it but nothings happened since November. Please give this a thumbs up if you would like to see this feature or comment if you have some insight. Use Case: Inventory set to be
      • How to install Widget in inventory module

        Hi, I am trying to install a app into Sales Order Module related list, however there is no button allow me to do that. May I ask how to install widget to inventory module related list?
      • Deluge date time issue

        The deluge function info zoho.currentdate.toString("MMM/YYYY") returns Dec 2026 instead of 2025
      • Sending automated messages that appear in the ticket's conversation thread

        Good morning, esteemed Zoho Desk community, warm greetings Today I am here to raise the following problem, seeking a solution that I can implement: I need to implement an automation that allows me to send reminder messages to customers when I am waiting
      • Issue with Zoho Creator Form Full-Screen View in CRM Related List Integration

        Hi Team, We have created a custom application in Zoho Creator and integrated it into Zoho CRM as a related list under the Vendor module, which we have renamed as Consignors. Within the Creator application, there is a form named “Pickup Request.” Inside
      • Next Page