Fundamental features of a Zoho Projects extension | Community | Zoho Projects

Fundamental features of a Zoho Projects extension | Community | Zoho Projects

Hello everyone!

Thank you for visiting our Building Extensions series. As part of this series, we've already covered how to use the Sigma cloud editor and the ZET CLI to create, test, and publish extensions for Zoho Projects. You can refer to our earlier posts for more details. We will now explore the core functionalities available to customize Zoho Projects extensions using the Sigma cloud editor approach.

Extension development: Broad objective

The comprehensive goal of extension development is generally to build tight integrations that can provide additional capabilities and make end users' work simpler and more productive. By integrating functional and technical provisions at the development end, extensions can subsequently be installed as part of the end user's Zoho Projects portal, allowing them to carry out additional functionalities while ensuring a seamless user experience.
So far, we've learned how to develop, test, and publish an extension. Now, let's look at the fundamental features of a Zoho Projects extension developed using the Sigma cloud editor.

Core features for customizing a Zoho Projects extension

In general, apps require data to function properly and carry out organizational tasks. This data must be acquired from reliable sources, analyzed, modified using logic functionalities when needed, and finally saved in order to be retrieved for future operations or business reports.

Some of the fundamental elements for customizing Zoho Projects extensions to carry out the tasks outlined above are:
  1. Tightly coupled integration
  2. Customized user interface
  3. Logical functionalities
  4. Event-based executions
  5. Data storage management
  6. Handling dialog box/pop window
Tightly coupled integration: A tightly coupled integration allows applications to be dependent on each other while ensuring a seamless and optimal exchange of information.

How it can be achieved: Connections
  • The Connections feature is essential when looking to develop an integration between Zoho Projects and another application through an extension.
  • You can connect with third-party applications or other Zoho products to perform activities that use data from other applications.
  • You can also establish connections for many applications and utilize them as part of a single extension. This creates a safe connection between Zoho Projects and other applications, allowing for seamless data functionality.
Customized user interface: A customized user interface with personalized features and components allows for a more simplified and direct approach to the end user.

How it can be achieved: Widgets
  • Widgets are graphical user interface components that help users easily access a product and perform functionalities.
  • You can create custom widgets and have them embedded in different locations in your extension. View the multiple locations where you can embed a widget here.
  • Zoho Projects also offers JS SDK for your javascript widget code to communicate with your extension.


Logical functionalities: Implementing an ideal concept requires the execution of a few to several fundamental blocks of logical functions.

How it can be achieved: Functions

  • Functions are blocks of code that help you perform a functionality.
  • You could write functions, leverage connections as part of functions to perform third-party operations, or utilize Deluge integration tasks to fulfill your functionality.
  • Finally, the function must be associated with the extension in order to be used in the extension.
Event-based executions: Executing logical functionalities based on an event enables the execution of triggers, the automation of work, and the avoidance of manual supervision.

How it can be achieved: Triggers
  • Triggers help execute functions in the occurrence of an event.
  • You can create triggers, associate it with an event, and then associate a function to the trigger to have it executed on occurrence of that event.
  • Check out the list of available trigger events here.
Data storage management: Managing and storing data plays a vital role in carrying out any operation smoothly and efficiently.

How it can be achieved: Data storage
  • Data storage allows you to save data or properties of an extension or entity.
  • The extension property can be used to store app/extension-level data, and the entity property can be used to store entity-level data.
  • Data storage is accomplished through the use of key-value pairs. The keys must be unique, and the values must be in JSON format.
Handling dialog box/pop window: Modal boxes are useful in instances where you need to prompt a dialog box that communicates data from the main application while holding control until the user completes an operation.

How it can be achieved: Modal box
  • Using the modal box, you can create a new iframe instance of the extension.
  • You can use modal boxes to send and receive data from one widget to another, allowing for inter-widget communication.
  • To create a new instance for the widget, send data to a widget, and receive or listen to data from a widget, Zoho Projects provides many methods such as instance, emit, and so on.
In this post, we looked at the major features that may be achieved using a Zoho Projects extension. We hope you found this information useful. In our upcoming posts, we will explain each feature in detail with example use cases. Continue to monitor this space for updates!

Sign up for a Zoho Developer account and start developing extensions for Zoho products using Sigma.

SEE ALSO:




      • Recent Topics

      • Zoho still running very slow

        I have a lead log for my company and creator seems to be running extremely slow still.
      • Bigin API Token Request ("invalid_client")

        Hi people, I tried to connect to the API without success, I've read all of the documentation multiple time and tried just about everything. I tried to do it with Python Request module and with Postman, passing the information through both the URL parameter
      • Shared Dashboard / Report Permissions : Read not Write

        hi all, We are missing a huge fonctionnalite in setting up Dashboards (and reports) on corporate level.  Currently, we can not set Read Permissions on share Dashboards (and reports) without giving write access as well When we create a corporate dashboard
      • Profile stitching with Zoho Marketing Automation

        When it comes to marketing, knowing who your audience is and tracking their interactions is vital. That's why Zoho Marketing Automation has taken a significant leap forward with its enhanced profile stitching feature. With this update, you can track your
      • GDPR

        Hi , I'm checking out the HIPPA capabilities and at the moment I can see only three modules that can be selected to enable HIPPA Any idea how I can add additional modules such as customers? TNX David
      • default task list for new project

        Is there any way to have a default task list already created in a project, when the project is created in Zoho Books?
      • Record less quantity than ordered in ZOHO inventory

        Lets say I ordered 100 widgets from a Vendor. I have paid the Vendor month ago and just waiting for the product to ship. I have finally received the products but have only received 80 widgets. I see no way in ZOHO to only receive 80 widgets. ZOHO is forcing
      • Stripe payments via Books invoice link missing email - affects fraud detection

        Hi, All our payments done via Books invoice link have a warning: Integration improvement available This transaction is missing customer email address, which affects fraud detection. Why doesn't Books pass this info to zohosecurepay.eu/books/... for more
      • Power of Automation: Automatically sync custom field data between two tasks.

        Hello Everyone, A Custom Function is a user-written set of code to achieve a specific requirement. Set the required conditions needed as to when to trigger using the Workflow rules (be it Tasks / Project) and associate the custom function to it. Requirement:-
      • 'View Invoice' button hyperlink taking to Google Business Maps listing

        The green "view invoice" button in my invoice emails is sending people to my Google maps business listing rather than the invoice. Both my clients and I are experiencing this as a new issue.
      • Migrating Zoho emails to Google Workspace

        Hi Is there a tool to migrate Zoho email to Google workspace?
      • Custom Functions - Calculate Commission - failure after migration from US to EU

        Hello, i would ask for help. My Custom Function - Calculate Commission stopped working and shows a failure. Mismatch of data type expression. Expected List but found String What is the problem? Could anyone help? Here is script: void automation.ObliczProwizje(Int
      • GoCardless Mandate Sync Question

        Hello, When syncing our customer database with GoCardless, some customers aren't working despite both email addresses matching in Zoho Books and GoCardless. Also what do we do about customers where they are associated with multiple accounts as these aren't
      • Create a draft in reply to an email via Emails API

        Hi, I’d like to use the outgoing webhook to automatically create a draft reply to incoming mail. How can I use the Emails API to create a draft reply that is linked to an existing email thread? I couldn’t find the relevant method in the documentation.
      • Weekly Tips: Flags for an organized mailbox

        Wishing you all a Happy New Year 🎉 As we step into 2025, it's time to refocus and set our intentions for the year straight. Whether you're already back at work or just returning from the holidays, you probably have emails that need your immediate attention,
      • Edit line item amount

        It would be sooooo much better to be able to edit the line item amount in all of the modules, if there is any variation in agreed prices it's extremely painful to calculate the rate to match ;-( The rate could be auto calculated on editing this field making life so much easier !
      • Chanel Partner

        Any Zoho channel partner or dubai based company who will help us for getting zoho services including the training for our staff
      • Refer a Friend Campaign

        I am looking to run a referral campaign that sees an initial email going to existing clients, asking them to refer a friend. For each new client referred, the existing client will get a ticket in a prize draw - the more new clients they refer, the more tickets they get in the draw.  I am wanting to figure out how this could be done via Zoho, and how these referrals can be tracked and linked to the existing client who referred them.
      • Emails cannot be received

        Hey, There is an issue in my Zoho account, E-mails can be send from my side but cannot be received on my account MX, DCIM and other are added but still cant receive them. Please help me to solve this problem at your earliest convenience and this is happening
      • Newsletter in multiple languages

        Hi We are planning on starting to use Zoho Campaigns for our newsletters. Since we send our newsletters in three languages, I would need the "unsubscribe page" and other pages related to the NL (Thank you page and so on) to be available in different languages
      • i couldn't recall message as one of the receptionists didn't received the message and i want to recall it urgent

        i couldn't recall message as one of the receptionists didn't received the message and i want to recall it urgent as recall button doesn't appear
      • Servidores caidos?

        Buenas, Hoy 30/12/2024, mi empresa esta sufriendo bastante problemas para acceder a las aplicaciones de Zoho. No sabemos si es solo nuestra compañia o esta afectado a todos. Cuando intentamos acceder a las aplicaciones nos salta el siguiente error: A
      • Tip #1- Remote support vs. unattended access: Contrasting two key concepts in tech assistance- 'Insider Insights'

        Hello everyone! We, at Zoho Community, are excited to introduce Insider Insights, a new series where we will look into various aspects of remote support technology and how they might help you. We'll be sharing tips, methods, and insights acquired from
      • Introducing Fair Evaluation for Interviews

        Collaboration is key in recruitment, but it’s important to ensure individual interviewers’ assessments are not influenced by others. With Fair Evaluation, you can choose how and when interviewers can see reviews of a candidate for the same job opening.
      • I have been looking for CVID to get segmate list where & how can fnd it?

        I am trying to get segment details from the Zoho API. The API documentation says that the CVID is a mandatory parameter, but I cannot find the CVID in the "getmailinglists" API. Can you tell me where to find the CVID?
      • "The data you have entered already exists" when trying to create contac@mydomain.com

        Hi all, Our domain is ananasjuicebar.com. Working as admin in the control panel: When I try to add the email account "contact@ananasjuicebar.com" I get the error: "The data you have entered already exists" I've tried creating a new user or creating a new group with this address associated. To my knowledge this address has never been added and I can also not find any reference to it. (Shopify used this address to send customer notifications BEFORE setting up Zohomail.) Any ideas? are there any restrictions
      • Tip of the week 03 - Sending emails in batches

        Today's marketers not only want their email marketing to be efficient, but also smart. For an email campaign, you may think you have all the essential elements for lead conversion—a big mailing list, an attractive template design, and the most-engaging message content, but after hitting the ‘send’ button, you may not get the expected conversions. Wondering why? Here’s one of the major reasons. Many marketers miss out on sending the email campaign the right way. Did you know that you should not be
      • Zoho Books Bank Feed

        Good afternoon, Is it possible to change the bank feed provider on a bank account. I'm using Plaid but think that Yodlee would be better in terms of pulling transactions in a timely manner. Thank you.
      • Create Bill from Purchase Order via API

        I know you can create a invoice from a Sales Order by using https://books.zoho.com/api/v3/invoices/fromsalesorder Is there a similar url for creating a bill from a purchase order?
      • Log incoming calls on Android CRM?

        I keep reading that I'm able to log incoming calls on the CRM app for Android, but when I answer a call and hang up, I never get the option to log. Is there a special admin I need to do for that? Or permissions? Thanks
      • How do i send an automated email 10 days after closing a ticket

        I am trying to set up an automated email to the customer a set period after the ticket is closed. I have created the email template, but i cannot work out how to set the trigger to send this out. Can someone point me in the right direction please? If
      • Domain Verification

        Hey,  How do I know that my account is verified by Zoho?  Do I need some zd code/number for it?  Need help asap! 
      • Sender not verified message showing on mails sent using zoho mail

        Hello, I am using Zoho mail to send and receive emails. Whenever i send emails to zoho mail id, it showing a message "Warning! Unverified sender.We could not verify that the email was actually from sending email. Be cautious when opening any links/ attachments,
      • Mail Outgoing blocked. Reason :Mail rate exceeded limit

        Hello, Please unblock my mail account: ser1@innspo.com Thanks
      • Why is Zoho Mail support so lousy?

        This is not the first time I voiced out about this, the first time was 2 months ago https://help.zoho.com/portal/en/community/topic/what-the-actual-fk-is-wrong-with-zoho-mail-support where I had to follow 7 times in the span of 2 months to get a (unhelpful)
      • 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
      • Add Google Workspace Module to Zoho Flow

        Dear Zoho Flow Team, I hope this message finds you well. We’d like to request the addition of a dedicated Google Workspace module in Zoho Flow. Currently, there are no triggers or actions for Google Workspace, which limits our ability to integrate and
      • Separate Triggers and Enhanced Information for Zoho One Departments and Groups in Zoho Flow

        Dear Zoho Flow Team, I hope this message finds you well. Currently, there seems to be a mix-up between zoho one departments and groups in Zoho Flow, which causes some challenges in handling triggers effectively. For instance, when using the "User added
      • Creator Subform to CRM Subform

        Hello all, Has anyone successfully written data from a Creator Subform into CRM subform? I have a Creator form that once submitted creates a new Location in the CRM. Inside a Location there is a subform for hours of operation. I collect those hours in
      • not able to accept the Invitation

        not able to accept the Invitation
      • Next Page