Integrating applications with Zoho Projects through Connections | Community | Zoho Projects

Integrating applications with Zoho Projects through Connections | Community | Zoho Projects

In our last post, we discussed the essential features that a Zoho Projects extension can provide. Starting with this post andin every subsequent post going forward, we'll go through each of those features in depth, one by one, with an example use case.
In this post, we'll explore the Connections feature in detail.

Connections: When and why?

Creating a tightly coupled integration requires the establishment of a secure connection between applications. To achieve this secured connection, the Sigma platform provides the Connection feature that can be used to establish a secure link and perform data operations across applications seamlessly and efficiently through an extension.

Use case

Working on development-related tasks might require dealing with a variety of files, such as code snippets, help documents, or service level agreements. While several file management applications are available to securely store and organize data, manually handling file storage between applications remains challenging.

For our example, let's use Zoho Projects to manage all tasks, and Dropbox to manage and store data.

What is the difficulty faced?

Dropbox offers a file request feature that allows you to collect files and organize them into folders. However, as we talked about in our previous post, manually categorizing and uploading task-related files to their respective file request folders in Dropbox would be a time-consuming and laborious activity. Instead, it would be more efficient to integrate Dropbox with Zoho Projects so that uploading task files to Dropbox file request folders can be done instantly from within Zoho Projects.


How can it be sorted?

You can create a connection between Zoho Projects and Dropbox. With the secure connection setup, the file request folders available in Dropbox can be listed on the task details page of Zoho Projects through an extension. You may then easily upload files from Zoho Projects to their corresponding folders in Dropbox, saving time and making you more organized.

What are the components required to achieve this use case?

  1. A connection between Zoho Projects and Dropbox.
  2. An extension configuration that includes:
  • Creating an extension
  • Configuring the plugin manifest
  • Setting up the widget code to display the Dropbox file request folders inside the Zoho Projects task details page.
Now, let's see how we can achieve each of these components.

1. Creating a secure connection using the Connection feature

  • Log in or sign up into developer.zoho.com.
  • Go to Sigma and access your workspace.
  • Once you enter your workspace, select the Connections section in Sigma.
Note: Connections created in Zoho Projects are also accessible within the Connections section in Sigma. These connections can be used in extensions to connect with other applications.

  • Choose the service as Zoho Projects and select your Zoho Projects organization. Click on Create Connection.

  • Sigma offers a list of default services from which you can choose and easily connect with Zoho Projects. If the application you want to integrate isn’t in the default list, you can add and build a connection with it using the custom services option.
Note: If you’re looking to connect Zoho Projects with another Zoho Product that also follows the OneAuth authentication mechanism, select the service Zoho OneAuth from the Default Services list to create the connection.

  • In our example, the application to connect with Zoho Projects is Dropbox, and because it’s in the Default Services list, go ahead and choose Dropbox.

  • After choosing the service, enter the connection name. A connection link name will be populated automatically.
  • Toggle Use credentials of login user to Yes if you want every user installing the extension to access the connection using their own login credentials, or No if admin credentials are enough to access the connection.
  • In our example, we'll proceed with the former. So toggle to Yes, and then click Create and connect.
Note: For services in which the option to choose the scopes is displayed, choose the necessary scopes, and then click Create and connect.

  • You’ll be directed through a series of authorization steps before being prompted to connect with Dropbox by entering your login information.
  • The connection will be established successfully once you sign in with Dropbox, and you will be redirected to the Connection Summary details page in Sigma.
  • To access this connection as part of an extension, you’ll need to configure the sample code provided under the JSON section in the plugin-manifest.json file. We’ll explore this in the next section.

2. Extension configuration

Now that we've successfully established our connection, let's look at how we can achieve our use case feature of displaying the Dropbox file request folder within the Zoho Projects task detail page. As mentioned earlier, to accomplish this, we’ll need to implement the following measures.
A. Create an extension

B. Configure the plugin-manifest.json file

C. Set up the widget code
Let's explore these steps in order.

A. Create an extension
B. Configure the plugin-manifest.json file
  • As previously stated, to access the connection established between Zoho Projects and Dropbox, the connection must first be configured in the plugin-manifest.json file.
  • Copy the JSON sample code from the Connection Summary Details page and paste it into the plugin-manifest.jsonfile as the value for the connections key.

  • You will also need to white list the Dropbox domain for Dropbox calls to be processed without being blocked.
  • Include the domain in the plugin-mainfest.json file as the value for the whiteLitsedDomains key.

  • As we saw in our earlier post, the plugin-manifest.json file includes a widget called Projects Extension by default. For our example, because we’re connecting with Dropbox and constructing a widget that will include Dropbox request folders to upload files, enter the widget name and location.

  • The final configured plugin-manifest.json file for our example would be as follows:
  1. {
  2. "connectors": [{
  3. "connectionLinkName": "dropbox",
  4. "userAccess": true,
  5. "sharedBy": "xxxxxxx",
  6. "connectionName": "dropbox",
  7. "serviceName": "dropbox",
  8. "isUserDefinedService": false
  9. }],
  10. "whiteListedDomains": ["https://api.dropboxapi.com"],
  11. "service": "PROJECTS",
  12. "cspDomains": {
  13. "connect-src": []
  14. },
  15. "storage": true,
  16. "locale": ["en"],
  17. "config": [],
  18. "modules": {
  19. "widgets": [{
  20. "name": "Dropbox - File Upload",
  21. "location": "taskdetails_rightpanel",
  22. "url": "/app/dropbox.html"
  23. }],
  24. "triggers": []
  25. }
  26. }

C. Setting up the widget code

Now, that we’ve created an extension and configured the plugin manifest file, let's finally set up the widget code in order to display all Dropbox file request folders inside our task details right panel.

Dropbox.html widget code: Please find the widget code snippet as an attachment in this post.
  • In this widget code, we’ve invoked the Dropbox API to list file request folders by constructing and passing the required data along with the connection we had established for Dropbox.
  • The API will be invoked and return all of the file request folders in the task details right panel, from which users can click on the link and directly upload files to Dropbox from within a task in Zoho Projects itself.
Sample output
  • Once the code is setup, publish and install the extension to check the functionality in the Zoho Projects portal.
  • Enter a task and click the extensions icon in the right panel.

  • From the lists of your Dropbox file requests, select the requests to which you wish to upload files.

  • The file will be successfully uploaded in the respective Dropbox file request.


We’ve demonstrated how to upload files directly to Dropbox file request folders from within Zoho Projects in this example. As part of your extension, you can use the Connections feature to do a variety of tasks, some of which are highlighted below.
  • View and update files associated with a certain request.
  • Create Dropbox folders and share them with collaborators.

Connections, therefore serves as a powerful tool that assists you in establishing a connection with other apps and performing smooth data transactions across your applications, thereby improving business functions and optimizing your work.

We hope this information was useful to you. Continue to follow us for further updates!

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

SEE ALSO




        • Recent Topics

        • Creator portal user do not accept user password upon creation

          I placed a request at Zoho and they are working on it, but I try here too in case somebody has already the answer: Today, sudently, my customers that tried to join the portal were not abble to enter a valid password, even if the password had all the necessery
        • Create new ticket when another specific ticket is closed

          Hi. How can I create a ticket when another specific ticket is closed? So I have a ticket with subject 'Create agreement' connected to the contact of a customer. As soon as I close this ticket, I want that a new ticket is created (connected to the same
        • How can a Zoho Desk Admin access restricted files?

          How can a Zoho Desk Admin access restricted files from Zoho Desk that are not displayed to agents on tickets due to file type restrictions?
        • Why is my Lookup field not being set through Desk's API?

          Hello, I'm having trouble setting a custom field when creating a Ticket in Zoho Desk. The endpoint I'm consulting is "https://desk.zoho.com/api/v1/tickets" and even though my payload has the right format, with a "cf" key dedicated to all custom fields,
        • Ticket template - Send email to multiple contacts

          Is it possible to set up a ticket template with multiple contacts selected to receive an email, rather than just one contact as the default? We use Zoho Desk to send an email report to a group of contacts every day, and have to manually add each email
        • Multiple Zoho Attendees in a Customer meeting

          We are having constraints with having to log duplicate meetings when we have 2 Zoho users attending a customer meeting. What are the options to resolve this? You can add participants, but you cannot report on them. What can be done to avoid creating so
        • Enrich your CRM data and keep them updated

          You spend a lot of your time and efforts in generating quality leads for your business. While generating leads is a challenge in itself, the real deal begins when sales reps try to nurture these leads and convert them as customers. So how equipped is your sales team with information about your leads matters a lot.  For example, you might be using webforms to generate leads and collect customer information from your website. The lesser your webform fields are, the more your sign-ups right? From optimizing
        • Feature Request – Support for Stripe Direct Debit for Canadian Customers in Zoho Books

          I’d like to request support for Stripe Direct Debit as a payment option for Canadian customers within Zoho Books. Currently, while Stripe credit card payments are supported for Canadian businesses, there is no option to enable Direct Debit (ACH/EFT) through
        • Client Script also planned for Zoho Desk?

          Hello there, I modified something in Zoho CRM the other day and was amazed at the possibilities offered by the "Client Script" feature in conjunction with the ZDK. You can lock any fields on the screen, edit them, you can react to various events (field
        • Zoho desk domain mapping not working

          Hi, I have followed this knowledge base support from your zoho site: https://help.zoho.com/portal/kb/articles/support-customers-from-your-own-domain-domain-host-mapping . First created a sub-domain(support.website.com), then went to zone editor to point "support.website.com" to cname desk.cs.zohohost.com . But it won't work out. What did I lack? Please I need it very much. Please see images below of the result: Please see below images of what I did: 1.)  2.) 3.) Hope to hear from you soon.
        • Zoho Analytics pulling data from Zoho Sheets and Zoho Forms

          It would be smart to have Analytics import data from Zoho Sheets or Forms. 
        • Feature Request – Support for Saskatchewan PST Self-Assessment in Zoho Books

          I’d like to suggest a feature enhancement for Zoho Books regarding Saskatchewan PST (SK PST) self-assessment. Currently, when filing the SK PST return using Zoho Books’ return generator, there is a field labelled “Consumption Tax”, which is intended for
        • Exporting Presentations with Embedded Integrations

          I am embedding Zoho Analytics charts and tables - how can I export the presentations so that the embedded images show ? At the moment it just shows broken images . *note* I do not need the exports to have the live data or links - just a snapshot of what
        • Bug in Total Hour Calculation in Regularization for past dates

          There is a bug in Zoho People Regularization For example today is the date is 10 if I choose a previous Date like 9 and add the Check in and Check out time The total hours aren't calculated properly, in the example the check in time is 10:40 AM check
        • Embedding Zoho Analytics - is the data always 'live' ?

          When embedding "live" Zoho Analytics data into a template with the intention of creating a monthly presentation - how are the embedded filters saved ? When a filter is applied to a presentation from a template is it then fixed for sharing or will it always
        • Customer/item(s) bought view

          Hello In Inventory/Customers/Transactions tab, how do I see what it is the customer actually ordered/bought without having to open each SO? Our customers buy a number of items thoughout the year. I've look at each transactions drop down, and no-where
        • Zoho Flow Doesn't Detect Desk Ticket Custom Field Change

          I have a Flow that is configured to be triggered when a custom field on a ticket changes. I also have a Schedule in Desk that runs a script that changes the custom field. When I change the custom field manually in the Desk interface, the Flow runs as
        • Weekly Tips: Track Email Engagement with Read Receipts in Zoho Mail

          While email is a convenient and widely used way to communicate, it doesn't offer the immediate feedback you get from face-to-face conversations or phone calls. When we send an email, there is no way to know for sure if the recipient has acknowledged its
        • Reusable Variables

          I’d like to know if there’s a way to store variables in Zoho Analytics that I can use in metrics or calculations. For example, I have a Currencies table that stores the value of different currencies over time. I’d like to use the value of the US dollar
        • The Invoice Status in Zoho Finance is misleading

          We have many overdue invoices, but when we try to filter it by Status Overdue in the Zoho Finance Module it shows it as none This is also creating a problem when I need to Create a Chart or KPI for overdue Invoices If I open the Invoice I can see the
        • Zoho CRM's V8 APIs are here!

          Hello everyone!!! We hope you are all doing well. Announcing Zoho CRM's V8 APIs! Packed with powerful new features to supercharge your developer experience. Let us take a look at what's new in V8 APIs: Get Related Records Count of a Record API: Ever wondered
        • If Problema Formula

          Ceil(Datecomp(${Seguimiento de Venta.Fecha de la proxima visita},Now())/1440) Tengo porblema al plantear el If Quiero que si el valor es dega
        • Multi-Select lookup field has reached its maximum??

          Hi there, I want to create a multi-select lookup field in a module but I can't select the model I want the relationship to be with from the list. From the help page on this I see that you can only create a max of 2 relationships per module? Is that true?
        • Customer Portal Zoho Desk | Sort ticket list

          Hello, If you view the ticket list inside the desk portal (https://xyc.zohodesk.eu/portal/de/myarea?departmentId=xyz) all tickets are displayed depending on the filters: department "my tickets" / "team tickets" status group/type channel My questions:
        • HTML Code + Writer Documents

          Hello, I am in the process of writing a couple of documents in Writer. Both document will have 2 versions each. One version being a freebee that perspective clients can download from my website. The other version will be a paid version, and additional
        • This mobile number has been marked spam. Please contact support.

          Hi Support, Can you tell me why number was marked as spam. I have having difficult to add my number as you keep requesting i must use it. My number is +63....163 Or is Zoho company excluding Philippines from their services?
        • Audit Log: Detailed View and Export for Better Tracking

          Audit log tracks all the events or actions performed by the users and displays them in a sequential order. By default, all users who have admin access can view the audit log. We have added new features to the audit log that will enhance the user experience
        • Display All Admin Roles in Zoho One Admin Panel

          Hi Zoho One Team, I hope you're doing well. Currently, in the Zoho One Admin Panel, we can see Org Admins and Service Admins assigned to specific applications. However, admins assigned at the organization level for various Zoho apps (such as Mail, Cliq,
        • Enable users to create and edit presentations in your web app using Zoho Office Integrator

          Hi users, Did you know that your users can create, edit, and collaborate on presentations from within your web app? With Zoho Office Integrator's embeddable presentation editor, you can easily add these capabilities. Here are the highlights: Create presentations:
        • Forced Logouts - Daily and More Frequent

          In the last month or so, I've been getting "power logged out" of all of my Zoho apps at least daily, sometimes more frequently. This happens in the same browser session on the same computer, and I need to re-login to each app separately after this happens.
        • I can buy a Domine

          I need assistance with an issue I'm experiencing. Whenever I attempt to purchase a domain, I receive a message that says, "We ran into some trouble. Please try again later." I would greatly appreciate any help you can provide. Thank you. Please refer
        • What's New in Zoho Inventory | January - March 2025

          Hello users, We are back with exciting new enhancements in Zoho Inventory to make managing your inventory smoother than ever! Check out the latest features for the first quarter of 2025. Watch out for this space for even more updates. Email Insights for
        • Zoho Customer Statements open item and NOT balance brought forward

          How do I set my customer statements to open item and NOT just the balance brought forward. I would like the customer to see all the invoices outstanding
        • Free Webinar! From click to doorstep delivery | Enhance your ecommerce fulfillment process

          Free Webinar! From click to doorstep delivery | Enhance your ecommerce fulfillment process April 24, 2025, 12 p.m. EDT As your business grows into the ecommerce sector, so do the complexities of fulfillment. From managing real-time inventory to handling
        • Zoho Books Invoice Enable Payment Gateway with Deluge

          I am using this to create an invoice record in zoho books from zoho crm invoices. I want to add the ability to enable online payment gateway for "stripe".  I can not seem to find one article online on how to do this.  Can someone help? invoice = zoho.crm.getRecordById("Invoices",id);
        • Issue List Export

          When viewing all Tasks, there are options to filter the list and export. With the Issue list, I can filter, but not export the list. Is there somewhere else to go to get an exported list of filtered issues?
        • Ask the Experts 19: Live Expert Panel Discussion - Inside Zoho Desk Spring Release 2025

          Hello again! Have you ever needed quick insights into key indicators to help manage and streamline specific operations? Have you started using AI to enhance your customer service in Zoho Desk? From configuring simple bots using Guided Conversations to
        • Viewing Live data

          Where can I see the live data that is sent from the device?
        • Calculating Project Margins and Revenue per Hour in Zoho Analytics Using Data from Zoho Projects and Zoho Expense

          Hello, I would like to know if it's possible to use Zoho Analytics to calculate taxes and margins for the projects available in Zoho Projects, while also including the expenses recorded in Zoho Expense. I’m looking to build a dashboard that calculates
        • NOW Zoho Creator still cannot bulk download Image or File Upload Field

          The filedownloader has been deprecated for 5 years. Until now, we still cannot have a replacement tool. How can we bulk download the file that we uploaded to Zoho Creator. Previously, it was so simple to bulk download all those files. But now failed to
        • Next Page