Extension pointers for integrating Zoho CRM with Zoho products #5: Manage your Zoho CRM project deals with agile methods by integrating Zoho Sprints

Extension pointers for integrating Zoho CRM with Zoho products #5: Manage your Zoho CRM project deals with agile methods by integrating Zoho Sprints

Sprints play a critical role in agile methodology as they involve breaking work down into smaller, deliverable, and implementable pieces to ensure smooth, frequent, and timely delivery.

Zoho Sprints follows the agile project management process. The diagram below depicts an overview of the general hierarchy used in Zoho Sprints.

As a business user, you can create multiple teams if you run multiple firms. Depending on your firm's work, you can create subdivisions within each team as Projects, and within each project, you can further break work down into smaller items known as work items. These work items can be of various types, such as a story, a bug, or a task. Each work item can be assigned a priority of None, Low, Medium, or High, based on its urgency and importance. You can create work items and store them in your project backlog space, and the team can later move the top priority work items from the backlog to your sprint space based on business delivery needs.

With multiple phases involved in the agile life cycle management process, analysis is a significant part where the requirement is analyzed in order to proceed to the next implementation phase. For the demo example, let's look at how we can push a backlog item into Zoho Sprints in order to analyze the deal work and move it as a sprint work item when it's ready for implementation.

Creating a connector for Zoho Sprints and adding connector APIs:

Create a new connector in your extension for Zoho Sprints using the Connectors feature under Utilities in the left panel of the Zoho Developer console. 

Note: Zoho Sprints follows OAuth 2.0 protocols for authentication. You can see how to register Zoho products and retrieve your client credentials here.



The connector details for our example are:

Request Token URL
Access Token URL
Refresh Token URL
Scopes
ZohoSprints.teams.READ,ZohoSprints.projects.READ,ZohoSprints.sprints.READ,ZohoSprints.items.READ,ZohoSprints.items.CREATE&access_type=offline

Add the necessary connector APIs for your functionality. Please refer to the Zoho Sprints API guide for details. 



The Zoho Sprints REST APIs we added for our example are:


Note: You can refer to this post to see the detailed steps involved in creating a connector, adding the connector APIs, and associating it with the extension.

Obtaining the IDs required to invoke the CREATE ITEM API through a settings widget

In our example, a backlog item is created in Zoho Sprints inside a particular team's project backlog space. For the item to be created in the right location, it is necessary to pass the
required parameters (team ID, project ID, backlog ID, deal name, item type ID, project priority ID) to the respective API.

Here the "deal name" parameter is obtained by getting the record details of that particular deal using the getRecordById API.

Since the other required parameters are user specific, these values can be obtained from the user during extension installation and stored in CRM variables to be easily retrieved when required. Thus the variables are created as CRM variables with the Variable Status as Hidden in the extension. Their values are obtained as follows:



Creating a settings widget: We have created a settings widget in our extension in order to retrieve the user-specific IDs and to set the values to the CRM variables.

Settings widget js code snippet - Please find the attachment for the js code snippet

Creating a workflow in the Deals module and associating a custom function to it:

Consider the following scenario: When a deal is moved to the Needs Analysis phase, a workflow is triggered that pushes the deal-related data as a backlog item into a specific team's project backlog space in Zoho Sprints. To accomplish this, let's create a workflow rule called Create work item using the Workflow feature under the Automate section of the Zoho Developer console, and then associate a custom function called Createitem to perform the desired action.

Createitem - custom function code

/*Fetching the description of the deal to be passed as the backlog item name while invoking the CREATE ITEM connector API */
response = zoho.crm.getRecordById("Deals",deal.get("Deals.ID").toLong());
Name = response.get("Deal_Name");
Name = zoho.encryption.urlEncode(Name);
Description = response.get("Description");
Description = zoho.encryption.urlEncode(Description);
dynamic_map = Map();
//Fetching the parameters required for the invoking the CREATE ITEM connector API 
teamid = zoho.crm.getOrgVariable("testing70__Team");
projectid = zoho.crm.getOrgVariable("testing70__Project");
backlogid = zoho.crm.getOrgVariable("testing70__Backlog_Id");
itemtype = zoho.crm.getOrgVariable("testing70__Item_type");
priorityid = zoho.crm.getOrgVariable("testing70__Priority_Id");
//Mapping the parameters
dynamic_map.put("teamid",teamid);
dynamic_map.put("projectid",projectid);
dynamic_map.put("backlogid",backlogid);
dynamic_map.put("dealdesc",Description);
dynamic_map.put("dealname",Name);
dynamic_map.put("itemtype",itemtype);
dynamic_map.put("priorityid",priorityid);
/*Invoking the CREATE ITEM connector API to create a backlog item inside the respective team's project's backlog*/
resp = zoho.crm.invokeConnector("xxx.zohosprints.createitem",dynamic_map);
info resp;

Now that the functionality is defined, the extension is published and installed in the Zoho CRM account using the private installation URL.



Once the extension is installed in CRM, the user can select their user-specific details through the settings widget and click the Update Values button to update those values to the CRM variables.

                                          

Now, the workflow will be automatically triggered when a deal stage is moved to the "Needs Analysis" phase.



A backlog item is created in the respective team's project backlog space inside Zoho Sprints as per the user specific values provided.



In this example, we have integrated Zoho CRM with Zoho Sprints to achieve an integrated functionality between two products. In a similar way, you can integrate Zoho CRM with other Zoho products to enable smooth functioning and efficient workflows.

We hope this guide to integrating your Zoho CRM account with Zoho Sprints was helpful. Keep following this space for more extension pointers.

The code snippets used in this forum post are available in the github link.

SEE ALSO






                            Zoho Desk Resources

                            • Desk Community Learning Series


                            • Digest


                            • Functions


                            • Meetups


                            • Kbase


                            • Resources


                            • Glossary


                            • Desk Marketplace


                            • MVP Corner


                            • Word of the Day



                                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 WorkDrive Resources



                                                                    Zoho Campaigns Resources

                                                                      Zoho CRM Resources

                                                                      • CRM Community Learning Series

                                                                        CRM Community Learning Series


                                                                      • Tips

                                                                        Tips

                                                                      • 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