Creating seamless integrations with connections

Creating seamless integrations with connections



Hello all,

In our last post, we gave an overview of the fundamental features available in the Zoho Sprints developer platform and the capabilities they offer in building effective extensions for Zoho Sprints.

In this post, we'll explore the feature Connections, the types of connections, and the steps to create one in detail, along with a use case.

Connections

What and when?

APIs are the core set of rules that an application provides to facilitate data exchange between apps. For API data transfer to be secure, those apps must be securely connected. Every app has an authentication mechanism in place to ensure that it's properly authorized and connected with other apps. Using the authentication mechanism, apps can be securely connected, and APIs can be used to handle data flow between them.

The Connections feature in the developer platform facilitates this secure integration between apps. It allows you to create seamless, tightly coupled integrations between Zoho Sprints and other apps, allowing for secure, synchronized data exchange with proper authentication and authorization.

Types of connections

There are two kinds of connections that can be created:
  1. Default connections: Zoho provides a default set of applications that you can simply select, provide some basic information for, and connect to.
  2. Custom connections: If the application you want to integrate with Zoho Sprints is not on the default list, or you want to make some customizations to your connection, you can create a custom service and then connect to it.
How to create a connection
  1. Go to Sigma and navigate to the Connections section in the left panel of your Sigma workspace.

  1. Choose Zoho Sprints as the service from the dropdown list, then select your Zoho Sprints organization.

  1. Click Create Connection to start creating a connection for the application you want to integrate with Zoho Sprints.
Note: Alternatively, you can also use the Default Services or Custom Services option under the Services section to access and create a default or a custom connection respectively.



Creating a default connection

Consider integrating with Zoho Projects to create tasks as work items in Zoho Sprints so that they may be managed in an agile way. In this case, you need to first check if Zoho Projects is included in the default service list. If it's available, to create the default connection, follow the steps below.
  1. Refer to the "How to create a connection" section for the first three steps to create a connection.
  1. Select the Default Services tab.
  1. Check for Zoho Projects in the service list by simply searching for it.

  1. Once located, click on the service. You will be redirected to the page where you must enter your connection details.
➤ Enter the connection name. The connection link name will be automatically filled in.
➤ Toggle Yes to Use Credentials of Login User if you want every user who installs the extension to authorize the connection using their credentials. Otherwise, toggle No to have only the admin authorize the connection once.
➤ Select the scopes for the APIs required to enable your extension's functionality.
➤ Click Create and Connect.
  1. The connection will be established successfully, and sample JSON code will be generated, which must be specified in the extension's plugin-manifest.json file before it can be used to invoke Zoho Projects APIs within the extension.

Note: If you want to use the Zoho Sprints APIs within the extension, you can establish a default connection for Sprints, configure it in the plugin-manifest.json file, and use it to access the Zoho Sprints APIs.

We'll look at how to configure and use the established connection in an extension later. Now that we've seen how to set up a default connection, let's move on to the processes for creating a custom connection with an example.

Creating a custom connection

Consider the following scenario: Zoho Sprints is used to manage the development and testing operations of an organization's internal team. The testing team reports a bug-related work item and notifies the developer. The developers may want to reproduce and resolve the issue with the tester via a remote or screen sharing session, which can be managed using Zoho Assist, a tool designed to assist users with these sessions.

In this situation, it would be ideal to have Zoho Assist integrated into Zoho Sprints so that a workspace user could start an Assist session with another user directly from the bug work item itself. Additionally, it would be efficient to add a comment with session details as part of the work item for future reference. To do this entirely in an extension, we need to do these key tasks:
  1. Create connections
  2. Create an extension and configure the plugin-manifest file
  3. Create a widget to start an Assist session from within a work item and add a comment to it.
1. Create connections

Since Zoho Assist isn't available in the default services list, let's go ahead create it as a custom service and connect with it. Refer to the "How to create a connection" section for the first three steps to create a connection, then proceed with the steps below to create a custom connection.
  1. Select Custom Services.
  2. Click the Create New Service option.

  1. You'll be redirected to a page where you need to enter your connection details.
➤ Enter the Service name. The service link name will be automatically filled in.
Choose the authentication type of the service you are creating the connection for. The parameter type and grant type options get populated depending on the authentication type chosen. The screenshot below displays the values chosen for the Zoho Assist service example based on its authentication mechanism.


➤ Next, provide the client credentials (obtained by creating an app in the Zoho API console).
➤ Enter the scopes of the Zoho Assist APIs required for your extension's functionality.
➤ Click Create Service.

  1. The service will be successfully created, and you'll be taken to a page where you can now go ahead and create a connection. In this page, you'll have to enter the details just like you provided connection details for your default connection.
  1. Enter a connection name, toggle Yes or No to Use Credentials of Login User, select the scopes, and click Create and Connect.

  1. You'll be asked to authorize the connection and provide access to your data for the scopes included. Accept and proceed.
  2. The connection will be successfully created and a sample JSON will be automatically generated.

  1. Since our example involves adding a comment to the Sprints work item as well, we'll be invoking the Sprints API for it. To access its API, a connection for Zoho Sprints is also required. This can be created as a default connection using the method shared in the earlier section.


2. Create an extension and configure the plugin-manifest.json file
  1. Navigate to the Extensions section in the left panel of your Sigma workspace.
  2. Click the New Extension button and create a new extension. You can refer to this post for detailed guidance on creating a new extension.
  3. In the plugin-manifest.json file of your extension, include the sample JSON code that was generated for the Zoho Assist connection you created. Also include the JSON code for the Sprints connection you created.


Now the connections are configured within the extension and can be accessed in it.

3. Create a widget to start an Assist session from within a work item and add a comment to it
  1. Create a file called createsession.html inside the app folder to render and handle the logic of your widget.
  2. This widget has to be configured in the plugin-manifest.json file with the following details.
name: The name of the widget: "Zoho Assist Session"
location: The location in which the widget needs to be rendered. This widget's location is in the work item's right navigation bar.
url: The URL path of the createsession.html file in the folder structure which renders the widget's user interface.


createsession.html - The HTML code for the widget is added as an attachment to the post.

➤ In the attached code snippet, we have invoked the Zoho Sprints API to fetch the list of Sprints workspace users. This user list is populated as a dropdown list to let the person accessing the widget choose the user they want to enter into an Assist session with. This API is invoked using a default connection created for Zoho Sprints.
➤ Next, the Zoho Assist API is used to start and create a session with the chosen user. The custom connection created for Zoho Assist is used to invoke this API.
➤ Finally, another Sprints API is invoked to add a comment that includes the session details to the work item.
  1. Now, you can test the widget using the Run option in the Sigma cloud editor. For detailed guidance on testing the extension, read our post here.
  2. Once you enter into the test environment, install the extension and authorize the connections.

  1. Next, enter into the work item and access the Zoho Assist Session widget. Choose the user and session type, and click Start Session. The session will be successfully initiated and a comment regarding the session details will also be added to the work item.


In this post, we have successfully explored connections, their types, and the detailed steps to create them along with an example. We hope you found this information useful. Keep following this space for more updates!

SEE ALSO







        • Recent Topics

        • Cliq iOS can't see shared screen

          Hello, I had this morning a video call with a colleague. She is using Cliq Desktop MacOS and wanted to share her screen with me. I'm on iPad. I noticed, while she shared her screen, I could only see her video, but not the shared screen... Does Cliq iOS is able to display shared screen, or is it somewhere else to be found ? Regards
        • Error 1011 saving website personalisation — blocking all changes (corrupted "home_page.content" field)

          When trying to save changes under Settings → Brands → MY COMPANY → Website → Personalisation → Messenger, I receive the following error: "Either the request parameters are invalid or absent" upon checking on the developer console of the browser I get
        • All new Address Field in Zoho CRM: maintain structured and accurate address inputs

          Availability Update: 29 September 2025: It's currently available for all new sign-ups and for existing Zoho CRM orgs which are in the Professional edition exclusively for IN DC users. 2 March 2026: Available to users in all DCs except US and EU DC. 24
        • Zoho CRM - Email/Message icon for Deal List View

          Hi Team, My idea is to include a message icon at the start of the row of Deals when an unread message has been received. This would really help highlight the Deals where urgent action is required. Thanks for considering this request. Regards, Ashley
        • Is there a way to show contact emails in the Account?

          I know I can see the emails I have sent and received on a Contact detail view, but I want to be able to see all the emails that have been sent and received between all an Accounts Contacts on the Account Detail view. That way when I see the Account detail
        • CRM x WorkDrive: We're rolling out the WorkDrive-powered file storage experience for existing users

          Release plan: Gradual rollout to customers without file storage add-ons, in this order: 1. Standalone CRM 2. CRM Plus and Zoho One DCs: All | Editions: All Available now for: - Standalone CRM accounts in Free and Standard editions without file storage
        • HR Helpdesk Cases

          We have Zoho One Enterprise. I'm trying to find HR Helpdesk Cases, but my UI does not match the documentation. I'm not sure how to move forward.
        • Tip #7 - Siri shortcuts in Zoho CRM

          Hello Everyone, Here is a tip about the 'Siri Shortcuts' feature and how it works in the iOS version of the Zoho CRM mobile app. What are Siri shortcuts? Siri Shortcuts are quick actions across your apps on iOS. They can perform an action automatically
        • Automatic Department and Employee Sync Between Zoho One and Zoho People

          Dear Zoho Support, I'm writing to propose a valuable feature request that would streamline data management and improve user experience within the Zoho ecosystem: automatic synchronization between departments and employees in Zoho One and Zoho People.
        • Nothing triggers a Journey

          I have been on the phone with Zoho support and they claim their development team needs to investigate more. However, I've found this is a pretty standard answer after a call takes any amount of time. After that, it's days and even weeks before it actually
        • Manually Backorder Sales Order and/or Change Sales Order Status

          Is there an option to manually 'backorder' a sales order, or otherwise change it's status?  In some cases, we receive orders for products that are out of stock, but we already have issued POs to our suppliers for replenishment.   Ex- we created a PO on
        • Backorder process review - Automating Removal of Sales Order from "On Hold" When PO is Received

          Hello Zoho Inventory Team, Currently, sales orders in On Hold status are released only when the bill for the purchase order is created. In our workflow, it would be much more efficient if the sales order could automatically move out of On Hold as soon
        • Kaizen #254 - Building a Temporal Lead Score Decay System in Zoho CRM

          Hello, CRM Wizards! Welcome to a fresh week of Kaizen. In this post, we will build a temporal lead score decay system that works alongside your existing scoring rules by introducing percentage-based score decay driven solely by customer inactivity. By
        • Metadata API Access to Functions

          I think it would be incredibly helpful to have api access to every function's code. Our team primarily uses deluge functions to update fields across modules according to business logic. I would like to create a visual dependancy model for our CRM, but
        • API actions/approvals endpoint returns UNAPPROVABLE despite user having full permissions and being the assigned approver

          Hi Team, We are trying to programmatically approve a record via the CRM API but consistently receive an UNAPPROVABLE error, even though the same user can approve the record without issue from the UI. Endpoint called: POST https://www.zohoapis.com/crm/v6/{module}/{record_id}/actions/approvals
        • Upcoming Change: Increased character limits for module and field labels

          To provide greater flexibility in customizing your CRM, we are increasing the maximum character limits for module labels and field labels in Zoho CRM. What's changing? Label Current Limit New Limit Module Label 25 characters 50 characters Subform Module
        • Get a realistic picture of your revenue with Forecast Adjustments in Zoho CRM

          #crm25q1 Dear Customers, We hope you're doing well! Today, we're here with an important enhancement for business decision makers: forecast adjustments. Let's get straight to it! With technology on the rise and CX at its core, businesses are constantly
        • I am not able to check in and checkout in zoho people even location access allowed

          This issue i am facing in mackbook air m1, I allowed location in chrome browser and i also tried in safari but getting similar issue. Please have a look ASAP.
        • WhatsApp Vendors Module

          Hello, so WhatsApp works with the below, mainly with the customer side modules. Can we get functionality on the vendor side modules, i.e., PO, Bills, Vendor Credits, Payments Made, Purchase Received? WhatsApp is often the preferred method of communication
        • Upload ticket attachments via Drag-&-Drop

          Hello, if you want to upload a file to the ticket attachment you need to click the button and use the file browser to select and upload the desired file. In many cases, it would be much more efficient if you could simply drag the file to the browser window...
        • Introducing parent-child ticketing in Zoho Desk [Early access]

          Hello Zoho Desk users! We have introduced the parent-child ticketing system to help customer service teams ensure efficient resolution of issues involving multiple, related tickets. You can now combine repetitive and interconnected tickets into parent-child
        • Elevate your Radar experience: Best practices part 3

          In the Spotlight: Zoho Desk's Radar app Customer support requires human intelligence combined with emotional intelligence. How about these coupled with contextual intelligence? These elevate the customer support experience. When providing support through
        • Migrating my email from GMAIL to ZOHO MAIL..........

          I am a long time GMAIL user and I really only understand how they operate, but after reviewing your tutorials and forums online, it is quite unbelievable how much more and how much more streamlined ZOHO mail is, not to mention ZOHO's wonderful, more advanced capabilities. I do have several questions about transitioning over to ZOHO.  Primarily, where is the best place to start, what do I do first? And how hard is it actually to move all my business and personal accounts over here?  When I sign up
        • Unable to send message;Reason:553 Relaying disallowed. Invalid Domain

          Hi, Now when I try to reply to an email, I see the Unable to send message;Reason:553 Relaying disallowed. Invalid Domain voicemessagedownloader.com error. I tested sending an email when I set it up in the past and it worked. I have checked the Zoho Organization
        • RFID Scanner/Adapter Solution for barcode scanning

          Hello, We will be trialing using barcode scanning for item verification during our picking process. Using a phone or a tablet is awkward and uncomfortable. Are there any Zoho compatible RFID scanners, or an RFID device/adapter that will connect with a
        • Approval Process not retriggering after rejection when stage is manually changed back

          We have an Approval Process on the Opportunities module that triggers when Stage is changed to Negotiation (Execute on: Edit Only). On rejection, a field update action reverts Stage back to Proposal. The issue: after rejection, AE can manually changes
        • Free Webinar Alert! Workdrive + Office Suite in Zoho Workplace: Create, co-edit and collaborate

          Hello Zoho Community! Looking for a better way to create, manage, and collaborate on your business documents? Join our upcoming webinar to discover how Zoho WorkDrive and the Zoho Office Suite (Writer, Sheet, and Show) help teams to work together from
        • Updating Sales orders on hold

          Surely updating irrelevant fields such as shipping date should be allowed when sales orders are awaiting back orders? Maybe the PO is going to be late arriving so we have to change the shipment date of the Sales order ! Not even allowed through the api - {"code":36014,"message":"Sales orders that have been shipped or on hold cannot be updated."}
        • Two-Factor Authentication in Zoho Mail: Add an extra layer of security to your organization

          Account security is a critical aspect of managing any organization's email. With increasing risks of unauthorized access, a single password may not always be sufficient to keep accounts protected. Zoho Mail's Two-Factor Authentication (TFA) addresses
        • Dark Mode - Font Colors Don't Work

          When editing a document in Dark Mode and selecting font colors, they don't show up on screen.  Viewing/editing the same document in Light Mode shows them just fine.
        • API to post drafts for social media

          I we want to post draft posts to our zoho social account and then approve and schedule them within Zoho social. is this possible with for example: https://apis.zoho.com/social/v2/post TIA Jon
        • How to show product cards in your chatbot

          Hey everyone, If you are using Guided Conversations to help customers find products, you have probably run into this problem: the bot gives customers a list of options, but they still have no idea which one to pick. There will be no images, no specs,
        • Changing settings for auto logoff

          I've noticed that when I haven't used Cliq for a while, I have to re-enter my password. That is really clumsy, especially if you have a complicated password. Because it won't be filled in automatically. Is there a way to change that behaviour? We are
        • How do you create invoices before sending them through Zoho Invoice?

          Hi everyone, I'm curious how other businesses handle their invoicing workflow before sending invoices through Zoho Invoice. Do you: Create invoices directly inside Zoho? Prepare them first in another invoice tool or template? Use Excel or Word before
        • ZML Error/Bug

          Hi, I would like to request for your help regarding this kind of behavior. Requested_Start_Time & End_Time - date-time fields https://......#Page:PH_Calendar_Page?reqDate=08-04-2026 https://......#Page:PH_Calendar_Page?reqDate=07-31-2026 https://....#Page:PH_Calendar_Page?reqDate=08-03-2026
        • Item with name in different languate

          Hello, is there a way to have an item with its name in different languages? For example: I sell an item in different markets and I'd like to have a Proposal and the Invoice with the Item Name in a specific language. Rino Bertolotto Zoho Specialist, STESA srl
        • Email notification for followers

          Is there a way to enable email notification for followers of a support ticket? ie: Ticket #123 is owned by Agent#1, Agent#2 adds themselves as a follower. Whenever ticket #123 receives an email from the customer, Agent#1 receives an email. Agent#2 would
        • Migration of emails from Yandex to Zoho

          I am trying to migrate an yandex mail account to zoho mail account. I am confused with all the related articles/informations in the net. Could someone please outline the process to do it, just thinking about me as a novice with limited knowledge or experience. A couple of questions from the knowledge gained. 1. I believe we have to delete the yandex current MX from the website records and add Zoho MX. What happens to the emails as we remove the mail exchange record. Yandex stops updating emails and
        • Auto-fill from logged-in user's profile for Name Fields in Subforms

          Hi, The Name field is great, but I see you can't tick the Initial Value option of "Auto-fill from logged-in user's profile" when it is on a Subform, why not? Thanks Dan
        • Calling a function within another function

          Hello there, I have just found out that you can simply call up functions in other functions, regardless of the department. You can't create functions with the same name twice, even though you are in a different department. If you try it, you don't get
        • Next Page