Building Extensions #12: Creating widgets with the JS SDK bundle in Zoho Desk - Config Params

Building Extensions #12: Creating widgets with the JS SDK bundle in Zoho Desk - Config Params

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.

In our previous post, we used Event APIs, along with the Data API and Request API, to create an extension that demonstrated how Event APIs can be used. In this post, we'll explain config params, and how we can put them to good use.

Config

The Config key is a part of the plugin-manifest file of an extension with configurable values. This key contains the installation parameters, commonly known as config parameters, which need to be configured when installing the extension. There are two types of config parameters:
  • userdefined (type1) - The value for the parameter should be provided by the user during installation
  • non-userdefined (type2) - The value for the parameter should be set dynamically from the extension, via the Set value for extension config variables API 
Below is the structure of the plugin-manifest file in which the config params are to be included as highlighted.

 
In the Config key of the plugin-manifest file, the below fields should be filled in as described here, as per your needs:
  • name: It is a unique name used to fetch the field values. In extension code, it is used to replace the values. This name should be given in lowercase, and no space is allowed.  
  • displayName: This name will be displayed as label of the field in UI.
    Note: If displayName is not given, then the value of the name will be considered as display name in UI.
  • description: It provides additional information about the field. Also, you can provide hyperlinks, as given in the above sample code structure.  
  • secure: True - values will be secured on the server side of the product and these values are hidden from the user; false - values will be available on the client side
  • type: Only "text" type is supported currently. Going forward, we support different types such as pick list, radio button, URL, Email, etc.
  • mandatory: Validate if the user enters values during installation
  • userdefined: True - input value is given by user
  • authType: It allows to get the params based on the user profile. Allowed values are org or personal.
    • org - If authType is given as org, then the fields of config params can be viewed only by the admin.
    • personal - If authType is given as personal, then the fields of config params can be viewed by all desk users
Note: Generally, the auth type is addressed globally with the key 'type' in plugin-manifest file. However, if you have a requirement to restrict the visibility of config params to specific users based on their role, this auth type is used by defining the values (org/personal) for each field in config params. While using this key, we should remove the 'type' in the plugin-manifest file.

Scenario

Now let's jump into the use case we're trying to implement. When an event change is triggered in Zoho Desk, we want a task to be created in Zoho Projects in a specific project mentioned by the user. While invoking the Zoho Projects Create task API, the ProjectID and PortalID of the user are required. In our example, we configure a config param in the plugin-manifest file to obtain the ProjectID from the user, and we use a request API to get the user's PortalID.

Obtaining ProjectID

By configuring the config param as given in the below code snippet, we make it mandatory for the user to provide the required project ID in the Configuration section while installing the extension:
 
          "config": [{"name":"ProjectID",
          "secure":false,
          "type":"text",
          "mandatory":true,
           "userdefined":true}]
 


The value provided by the user needs to be fetched and passed to the Zoho Projects Create task API. The extensions API then needs to be used to capture the config params value.
 
         ZOHODESK.get("extension.config").then(function(response){
            configData=response["extension.config"]; 
            for (let i = 0; i < configData.length; i++) { projectID=configData[i].value;
            //console.log(projectID);
         }

Obtaining PortalID

Now that we have the ProjectID, next we need to get the portal to which the project is associated. A request API can be used to get the PortalID.
 
(Note: In our example, we assume that the user has a single portal in Zoho Projects. If there are multiple portals it needs to be handled accordingly in your code.)


Creating task in Projects

Using the PortalID and ProjectID we've obtained, we invoke the Zoho Projects Create task API using the request API as given below:
 


In today's example, we've shown how to configure the config params in the plugin-manifest file, and how to get those param values and use them further in your extension using APIs. We hope you now have a clear picture on how to use config params in Zoho Desk.
 
Stay tuned for our next post, where we'll be discussing another SDK method!

    Access your files securely from anywhere


            Zoho Developer Community





                                      • Desk Community Learning Series


                                      • Digest


                                      • Functions


                                      • Meetups


                                      • Kbase


                                      • Resources


                                      • Glossary


                                      • Desk Marketplace


                                      • MVP Corner


                                      • Word of the Day


                                      • Ask the Experts



                                          Zoho Marketing Automation


                                                  Manage your brands on social media



                                                        Zoho TeamInbox Resources

                                                          Zoho DataPrep Resources



                                                            Zoho CRM Plus Resources

                                                              Zoho Books Resources


                                                                Zoho Subscriptions Resources

                                                                  Zoho Projects Resources


                                                                    Zoho Sprints Resources


                                                                      Qntrl Resources


                                                                        Zoho Creator Resources



                                                                            Zoho CRM Resources

                                                                            • CRM Community Learning Series

                                                                              CRM Community Learning Series


                                                                            • Kaizen

                                                                              Kaizen

                                                                            • Functions

                                                                              Functions

                                                                            • Meetups

                                                                              Meetups

                                                                            • Kbase

                                                                              Kbase

                                                                            • Resources

                                                                              Resources

                                                                            • Digest

                                                                              Digest

                                                                            • CRM Marketplace

                                                                              CRM Marketplace

                                                                            • MVP Corner

                                                                              MVP Corner





                                                                                Design. Discuss. Deliver.

                                                                                Create visually engaging stories with Zoho Show.

                                                                                Get Started Now


                                                                                  Zoho Show Resources


                                                                                    Zoho Writer Writer

                                                                                    Get Started. Write Away!

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

                                                                                      Zoho CRM コンテンツ








                                                                                        Nederlandse Hulpbronnen


                                                                                            ご検討中の方





                                                                                                  • Recent Topics

                                                                                                  • Line Level Markups When Creating Quotes

                                                                                                    It would be amazing if we could add line-item-level Markups for items and non-listed items when creating a Quote. I know Pricelists exist but they don't work the best for a quick quote with changing items and different Markups.
                                                                                                  • Customer Portal Users Metrics

                                                                                                    Hi, Is there any way to know who and when a specific customer portal user accessed? without having to use the metrics page.
                                                                                                  • New Agent Creation - Not Receiving Activation Email

                                                                                                    I created multiple new agents within Zoho Desk with no issue. Everyone one of them received the activation email except one. The email is correct and confirmed multiple times. It is not located in the Spam folder. I withdrew the activation and recreated
                                                                                                  • Client Script | Update - Introducing Subform Events and Actions

                                                                                                    Are you making the most of your subforms in Zoho CRM? Do you wish you could automate subform interactions and enhance user experience effortlessly? What if you had Client APIs and events specifically designed for subforms? We are thrilled to introduce
                                                                                                  • Introducing Booking Pages—a topping for your Calendar Scheduling needs!

                                                                                                    Greetings, We're here with a new topping for Bigin! Let's dive into the details. What does this topping do? Scheduling appointments with customers is one of the most common challenges small businesses face on a daily basis, as it often involves frequent
                                                                                                  • Is it possible to load a Module with a filter pre-applied by the URL?

                                                                                                    In many of the CRM related lists, there is limited sorting, and no filtering available. I thought of the idea of putting a Custom Button on a Related List that would take the user to that module, but PRE-FILTERED by the Account from where they were viewing
                                                                                                  • How do you send an email to a customer from Zoho Desk?

                                                                                                    I have pulled up a customer record and I click the email icon and the email address, nothing happens.... Email attached of where I am.  Is there a different way to send an email?
                                                                                                  • Can we turn off archiving views?

                                                                                                    Is there a way to turn off view archiving? Some views aren't used regularly, and archiving may force us to recreate them.
                                                                                                  • PO receive limitations

                                                                                                    It is VERY common to receive more or less that the PO quantity. It's totally ludicrous to limit the maximum receive to the PO quantity! What if the receive is 0.00001 less than the PO quantity - it leaves the PO as "Partially received" The current options are to edit the PO manually before finalizing the receive, an outrageous situation ! Please Zoho guys - this is an infuriating oversight & can be easily resolved by introducing the option as shown in the attached document ......
                                                                                                  • Customer Parent Account or Sub-Customer Account

                                                                                                    Some of clients as they have 50 to 300 branches, they required separate account statement with outlet name and number; which means we have to open new account for each branch individually. However, the main issue is that, when they make a payment, they
                                                                                                  • Zoho Workdrive file versions

                                                                                                    Hello. I have Workdrive setup to sync files offline to an external hard drive. The off line sync folder currently shows at 1.42 TB. I have a 5 TB storage limit in Workdrive. The cloud version of Workdrive says that I have used all 5 TB! I have 27, 285
                                                                                                  • Attachment Template as PDF from Another Form Zoho Creator

                                                                                                    Hi Everyone, have a good day. I have question, below my script for put the attachment into email. But my template PDF from another form ("Form B"). I get errror because template PDF not exist in the form "Alasan Reject". The form name for example "Form
                                                                                                  • Unchecked an option in a checkbox when another option is checked

                                                                                                    Hi, in a Creator form, I have around twenty checkbox fields, named for example "cb1", "cb2", "cb3", etc... Each of these fields have two options: Done and N/A. I would like to be able to for each field, if I check "Done", "N/A" is unchecked, and if I
                                                                                                  • How to Set filter OR, AND?

                                                                                                    Hi, I'm struggling with a data filtering problem. In Subform I have two fields of type Lookup (multiselect). First field. Ingredient, has links to the secound filed Function. I want to set the filter to in secound field Function. ID equals input.Ingridient,
                                                                                                  • Allow customer to select meeting duration

                                                                                                    I would love to see a feature where I can give the customer the option to select the meeting duration they require based on a dropdown list which I have predefined in the service settings. For example: 15, 30, 45, 60, 90 minutes.
                                                                                                  • Conditional Layouts On Multi Select Field

                                                                                                    How we can use Conditional Layouts On Multi Select Field field? Please help.
                                                                                                  • Tip #10: Various time zone settings on the bookings page

                                                                                                    Managing appointments across different time zones has become an integral part of our daily lives. Whether you're arranging a global business meeting or expanding your consultations to other countries, the ability to adapt to various time zones is crucial.
                                                                                                  • Canva Integration

                                                                                                    Hello! As many marketing departments are streamlining their teams, many have begun utilizing Canva for all design mockups and approvals prior to its integration into Marketing automation software. While Zoho Social has this integration already accomplished,
                                                                                                  • Issues with Calendar .ics Files Attached in Customer Email Notifications

                                                                                                    Hello, Thank you for recently adding .ics files as attachments in confirmation emails generated by Zoho Bookings; however, it seems that there are some issues with the new feature, particularly in the email notifications sent to customers: If a booking
                                                                                                  • Zoho Assist no longer works using VPN

                                                                                                    I have been using Zoho assist for a bit longer than a year. I have been using the VPN Private Internet Access for even longer.  For the first year of using Zoho assist I could remote into a pc, turn on a vpn, it would disconnect but then reconnect my
                                                                                                  • How to edit a cancellation reason

                                                                                                    We are trying to improve our cancellation reasons so we can better understand why customers are cancelling. Our list of reasons has improved as we have studied the matter. I would like to update the reasons for past cancellations, but I can't find anyplace
                                                                                                  • Kiosk can't merge picklist or multiselect

                                                                                                    There is no ability to load a multiselect or picklikst field into a kiosk with the values that have been previously selected. So, I essentially have 3 unacceptable options: 1.)Load the value into a text string and include instructions like this: "Picklist
                                                                                                  • Downloading Image from Subform using Deluge (invokeUrl) - Data Mismatch / Connection Issues

                                                                                                    Hi Zoho Community, I'm struggling to download an image from a subform in Zoho Creator using Deluge and then attach it to a Zoho CRM Deal record. I've been working on this for a while, and I'm encountering issues that I believe are related to either data
                                                                                                  • Why hasn't Zoho CRM For Everyone been rolled out?

                                                                                                    I don't understand the point of rolling out new features so slowly after a big fanfare launch 8 months ago. I've signed up for 'early access' and also contacted my point of contact, but nothing. Not even an auto reply. Would you say that this is good
                                                                                                  • WorkDrive API Documentation

                                                                                                    WorkDrive provides users and developers an extensive set of APIs to help integrate functionalities of Zoho WorkDrive with other Zoho applications and third-party tools. We have published the official WorkDrive API Documentation page for all external users.
                                                                                                  • Announcing Early Access to "Zoho CRM for Everyone" — A new and exciting update to Zoho CRM

                                                                                                    We are delighted to announce an Early Access to Zoho CRM for Everyone— a truly democratic approach to managing a CRM, gift-wrapped in an exciting and intuitive user interface. Here, multiple teams across an organization can coordinate among each other
                                                                                                  • Notification sender email is coming from Zoho, not from my domain

                                                                                                    Hello, I have Zoho Desk configured to use "From address" as my domain support email i.e. support@ mydomain.com (email is verified) , we send automatic notification to contact (customer) when they submit a new ticket. Yet the notification email is sent
                                                                                                  • Recovering deleted notebook

                                                                                                    I am not sure what happened to one of my notebooks, might of deleted it. I did empty the trash without looking. Is there a way of recovering it?
                                                                                                  • Which WhatsApp API works seamlessly with Zoho CRM?

                                                                                                    I’m exploring WhatsApp API solutions that integrate seamlessly with Zoho CRM for customer communication, lead nurturing, and automation. I would love to hear insights from those who have successfully implemented WhatsApp within Zoho CRM. My Requirements:
                                                                                                  • Auto Reply on Zoho Desk

                                                                                                    Can we set an Auto Respond to every email that Zoho Desk receives? Is there a way that any of the information in the original email can be pulled through to that reply? Like a mail merge?
                                                                                                  • Re-create auth token

                                                                                                    I need to re-create a self-client auth token, with the same scopes (and additional ones) as the current token. Is there a way to view the scopes assigned to the current token to ensure that no scopes are missing when creating the new one?
                                                                                                  • Client Can't View Ticket

                                                                                                    Hi, I created a ticket for my Client since he had an issue. I added him as a Contact as well. My client got a notification in his email that the ticket has been created. When he went to view the ticket on his desktop, the screen was blank. He then viewed
                                                                                                  • Boost Customer Experience: Let Visitors Choose Their Preferred IM Channel in Your Chat Widget

                                                                                                    We have an exciting enhancement coming your way. Pushing the perimeter has always been our thing, and we have come up with yet another enhancement for your Zoho SalesIQ live chat. Did you know your live chat can support more than chats and calls? That's
                                                                                                  • Re-emphasizing the importance of Domain Whitelisting in ASAP's JWT Authentication Mechanism

                                                                                                    The problem We discovered a security vulnerability related to using OAuth tokens in non-whitelisted domains and have reinforced our security measures. If you experience any request failures in the authorized domains, please verify that they are whitelisted
                                                                                                  • Issue Saving Workflow Rule – "Unable to Process Your Request" Error

                                                                                                    Dear Zoho Recruit Support Team, I am experiencing an issue while trying to integrate a new rule into a workflow. Specifically, I am setting up a Follow-Up workflow for applicants, where a user is assigned based on specific requirements. However, when
                                                                                                  • Multiple Blueprints on different fields at the same time.

                                                                                                    It looks only 1 Blueprint can run at the same time, it makes sense for many Blueprints on the same field (Eg. Stage). But what about multiple Blueprints on "different" fields? the multiple options must be available. (Eg. Stage, Documents Status, Contract
                                                                                                  • Chat window do not auto scroll on Firefox for mobile.

                                                                                                    The chat window doesn't auto-scroll when typing, and the phone's keyboard covers what the visitor is typing until they manually scroll. This happens in Firefox for both Android and iOS, regardless of the device. It's not a good user experience as you
                                                                                                  • More admin control over user profiles

                                                                                                    It's important for our company, and I'm sure many others, to keep our users inline with our branding and professional appearance. It would be useful for administrators to have more control over profile aspects such as: Profile image User names Email signatures Themes  Although we can guide our users on the branding style they should adhere to, administrators really don't have any control over user profiles once they have been created.  At this stage I will have to spend time going in to each Zoho
                                                                                                  • Zoho CRM's new Homepage component: See all your activities in one powerful view!

                                                                                                    Hello everyone, We’re excited to introduce a new feature to your CRM dashboards: the Homepage Open Activity Component! Now you can effortlessly track all your open activities—including tasks, meetings, calls, and appointments—in a unified view, tailored
                                                                                                  • Identifying a collegue in remark section - Zoho CRM

                                                                                                    When I mention my colleague in the Remarks section (Contact CRM), she should receive an email notification. However, I receive them, but she does not. How can she enable notifications? Thanks!
                                                                                                  • Next Page