This tutorial will help you build a web application that can connect with your Zoho CRM account and enable you to manage leads in your organization. You will be able to access, add, edit, or delete leads in the Leads module in your CRM account, directly from this application.
The connection to Zoho CRM is established using OAuth 2.0 authentication protocol. We will generate an OAuth Access Token for the Lead Manager application and use it to authorize the connection to access CRM data.
We will also implement a Catalyst connector to manage this access to the CRM account. The connector will refresh the Access Token automatically each time it expires using a Refresh Token, and will maintain a constant connection between the client and the CRM account.
These tokens can be generated after registering the client application in Zoho API console and obtaining the required credentials.
The client application will look like this:
The Lead Manager application contains the following fundamental Catalyst components:
- Advanced I/O Function: The Advanced I/O Function can be coded either in the Java or Node.js platform. The function defines the APIs that handle the CRUD actions of the CRM Leads module, such as adding or deleting a lead, from the client application. It also defines routes that handle the connection to CRM, authenticate the user, and generate the OAuth tokens.
- Client: This is the front end of the application that is hosted on Catalyst through web client hosting
The Lead Manager application uses the following Catalyst features:
- Data Store: To store the Refresh Token and UserID of the Catalyst user fetched by the Advanced I/O function. The Refresh Token is fetched from this table by the function, whenever a new Access Token needs to be generated.
- ZCQL: To fetch data from the Data Store through querying
- Catalyst Authentication: To implement a Zoho sign-in option in the client application's login page, in addition to the standard login option.
We will use the Catalyst web console and the Catalyst Command Line Interface (CLI) to build this application.
You will be given the code for the files to be included in the function and client components in this tutorial. You will just need to copy the provided code and paste it into the appropriate files as directed.
The Lead Manager application's architecture is depicted below:
We will explain the architecture in detail in the Configure Client section, after you configure the function and client components.