Creating a Gmail integration using custom connectors

Creating a Gmail integration using custom connectors

Hello everyone!

Greetings from Deluge. Following up on our series aimed at exploring the capabilities of Deluge, today we'll take an in-depth look into the Deluge custom connections that can be created across Zoho services.

Deluge boasts an extensive range of over 260 built-in integrations spanning more than 35 Zoho services. These integrations streamline data access and modification with these services, from a single point in Zoho, without having to toggle between services. However, we understand that the needs of our users vary widely, and sometimes existing integrations may not cover every scenario.

That's where custom connections come in. Think of them as the Swiss Army Knife of integrations, enabling connections with hundreds of services—such as Gmail and Outlook—and seamlessly integrating them with your favorite Zoho services. With custom connections, you have the power to build your own integrations with virtually any third-party service and tailor them to meet your requirements. Moreover, since the custom connections use the OAuth 2.0 authentication mechanism, you're getting best-in-class security while integrating with third-party services.

What are connections? 
Before we dive into the details of custom connectors, let's take a glimpse at what connections are in Deluge. Connections are a means to connect your Zoho account and any third-party accounts you wish to integrate with. Once a connection is created and connected, you can use it in Deluge integration tasks or invokeURL scripts to perform REST operations on the target service from the required Zoho service. For more information, visit our Connections help doc.
  
Use case 
Assume the sales team of an organization uses Zoho CRM for managing leads, customer retention, and customer acquisition, and uses Gmail for communication purposes, like following up with potential clients via email.   While the system works as is, it's time-consuming and prone to error, so an integration between Gmail and Zoho CRM is necessary to improve efficiency.

A custom connection to your Google account will enable you to sync your Zoho CRM and Google accounts, allowing you to perform actions related to your Google account from Zoho CRM. For example, you can invoke the connection using the invokeURL task in Zoho CRM and send an email to your leads from your Gmail address.

Steps to configure the Google custom connection

Configuration video


Configuration steps
Creating Google OAuth credentials
  1. Visit https://console.cloud.google.com/.
  2. Click the dropdown and choose the required project.
  3. Navigate to the hamburger menu on the left and click APIs and services -> Library.
  4. You'll be taken to the API library page. Navigate to the Google Workspace section and click Gmail API.
  5. Next, click Enable on the Gmail API product details page.
  6. In order to use this API, you'll need to create credentials. Click CREATE CREDENTIALS.
  7. On the Create credentials page, choose Gmail API in the Select an API dropdown and User Data under the What data will you be accessing? section. Click Next.
  8. Next, on the OAuth consent screen, enter the App name, User support email, and Developer contact email address. Then click Save and Continue.
  9. Next, under the Scopes section, click the ADD OR REMOVE SCOPES button.
  10. In the Update selected scopes pane, search and select the gmail.readonly scope. Click Update, and then click Save and continue.


  11. Now, under the OAuth Client ID section, choose Web application in the Application type dropdown. Then name your app.


  12. Enter https://deluge.zoho.com/delugeauth/callback as the Authorized redirect URI.
  13. Click Create and download your credentials. This Client ID and others will be required later, while creating a connection in Zoho CRM.
  14. Navigate to the OAuth consent screen and click Add users under Test users. Enter the user's email address and click Save.
Creating a custom connector for Gmail
  1. Now the action shifts to Zoho CRM. Navigate to crm.zoho.com -> Settings -> Connections.
  2. Choose Custom Services and click Create Service.
  3. On the Create Service screen, choose OAuth 2.0 as the Authentication type and Header as the Parameter.
  4. Enter the Client ID, Client Secret, and Authorize URL generated from Google as shown in step 12 above.
    Tip: Having the Offline access type will allow your application to refresh tokens even when the user is not actively using the application.
  5. Then enter https://oauth2.googleapis.com/token as the Access token URL and Refresh token URL.
  6. Specify the necessary scopes like read and create, etc. and then click Create Service.
  7. On the next page, click Create Connection. Give the connection name and choose the scopes. Then click Create and Connect.
  8. Finally, authenticate the connection on the Google accounts page. Your custom connection will be created, and the two services can be integrated!
Now that the connection between Zoho CRM and Gmail has been established, you can use the invokeURL task to access and modify data in Gmail using the different APIs.

Sample
You can use the below code in invokeURL task to get the latest emails from Gmail.

userId = "emailaddress@gmail.com";
get_gmail = invokeurl
[
url: "https://gmail.googleapis.com/gmail/v1/users/"+userId+"/messages"
type: GET
connection : "connectionname"
];
messageID = get_gmail.get("messages").get(0).get("id");

get_gmail_withID = invokeurl
[
url: "https://gmail.googleapis.com/gmail/v1/users/"+userId+"/messages/"+messageID
type: GET
connection : "connectionname"
];

Content_of_the_mail = get_gmail_withID.get("snippet");
info "Mail Content : " + Content_of_the_mail;

gmail_values = get_gmail_withID.get("payload").get("headers");
for each headers in gmail_values
{
if ( headers.get("name") == "Subject" )
{
info "Subject of the Mail : " + headers.get("value");
}
if ( headers.get("name") == "From" )
{
info "From Address : " + headers.get("value");
}
}

References

----

And that's a wrap for today! We hope you found this post informative and start using custom connections to experience the full capabilities of Deluge and Zoho.

Kindly let us know if you have any questions, feedback, or suggestions in the comments, or write to us at support@zohodeluge.com!
 
Regards,
The Deluge Team

      Zoho Campaigns Resources


        • Desk Community Learning Series


        • Digest


        • Functions


        • Meetups


        • Kbase


        • Resources


        • Glossary


        • Desk Marketplace


        • MVP Corner


        • Word of the Day


        • Ask the Experts


          Zoho CRM Plus Resources

            Zoho Books Resources


              Zoho Subscriptions Resources

                Zoho Projects Resources


                  Zoho Sprints Resources


                    Zoho Orchestly Resources


                      Zoho Creator Resources


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




                            Zoho Writer Writer

                            Get Started. Write Away!

                            Writer is a powerful online word processor, designed for collaborative work.

                              Zoho CRM コンテンツ




                                ご検討中の方

                                  • Recent Topics

                                  • Integration Request: Elementor

                                    Integrating Zoho CRM forms with Elementor, the most popular page builder on Wordpress, would be great. I use it for our site, goenergylink.com, and I have had to use Zapier webhooks to be able to connect it with Elementor. The one issue I have run into
                                  • Ability to Change Visibility of Published YouTube Videos

                                    Hi Zoho Social Team, How are you? We would like to request an enhancement in Zoho Social regarding the management of already published youtube videos. Currently, after publishing a youtube video through Zoho Social, there is no option to change its visibility
                                  • Adding anchor links in Zoho CRM email templates

                                    I know you can add anchor link in Campaigns, but I dont see the option to that in the CRM email template. Am I missing something?
                                  • Ability to Add YouTube Video to Playlist During Publishing

                                    Hi Zoho Social Team, How are you? While publishing YouTube videos through Zoho Social, we noticed that the platform currently does not allow selecting a playlist at the time of publishing. Instead, we can only add the video to a playlist after it has
                                  • Introducing Zoho Creator's 2025 Release Projection 2

                                    Hello Creators! I'm Prakash, from the Creator product management team, and today I'm delighted to unveil our next set of features as part of Release Projection 2 for 2025. With thoughtful analysis and planning, we've curated powerful new capabilities
                                  • Sharing Form Ownership Among Multiple Users

                                    I would really like the ability to share form ownership among multiple users. It's frustrating to me that if a co-worker wants to make an edit to a form, I have to transfer ownership to them. It would be great if forms could act like google forms, where multiple people can edit a form and view responses. 
                                  • Marketer’s Space - Ace Your Spooky-Season Marketing with Pre-designed Templates in Zoho Campaigns

                                    Hello marketers, Welcome back to another post in Marketer’s Space! We’re in Q4, which means that you have endless opportunities to connect with your audience, starting with Halloween campaigns! In this post, we’ll show you how to design the perfect Halloween
                                  • Zia expands to China with native features and DeepSeek-powered generative AI features

                                    Hello everyone, We are glad to support Zia native features and Zia generative AI features for our customers in China. From hereon, all AI-features in Desk will be accessible in China data center with the integration of DeepSeek generative AI model. DeepSeek
                                  • Email in each module

                                    We have a contact ,module which then has a link to customer assets which in turn the asset has a multiple link to service visits. When we link assets to customers we choose by name and it brings over the associate email via the lookup. Great feature.
                                  • Introducing Skill-Based Ticket Assignment

                                    The goal of every support team is to provide great support, and to do so as fast as they can. To make this possible, it is important that agents spend their time judiciously, especially when they're dealing with a large number of tickets of varying urgency
                                  • Kaizen #213 - Workflow APIs - Part 1

                                    Welcome to another week of Kaizen! If you have ever managed complex business processes, you know that Workflows are the quiet backbone of any well-run business process. They keep things moving; assigning owners, sending alerts, keeping deals on track,
                                  • Browser and address bar hide

                                    Hi, How i can do hide the address bar with browser headline when i am working on the sheet, because i am using (freeze panes) which i want visible for full work. For your reference here i am attached the screen shot and marked yellow lines which really
                                  • Cells Border

                                    Hi I am using Zoho Sheet on S Tab , is there any option to make all border of any cell at once. I think this is very basic which we are missing. This is available in mobile but not in tab or suggest if i am missing this function. And for Tab can you give
                                  • Zobot and Sales IQ

                                    What will happen to the Zoho Sales IQ being integrated to the website after creating the Zobot on the website too
                                  • Support french language options

                                    Greetings, I want to use Zoho with the french language portal, however the supplied translation is not very good (google translate). There are many basic mistakes on the main most important sections (my requests, submit a request). Is there a way for
                                  • Introducing the Workflow and Actions APIs for Zoho CRM

                                    We are absolutely thrilled to announce the release of Workflow APIs and Actions APIs in Zoho CRM’s v8 API suite! This powerful new set of endpoints gives developers unprecedented programmatic control over business automation. For years, Workflow Rules
                                  • Zoho Form URL displays incorrect name

                                    Hi, I have a form I created called "Design Request form". It displays this way everywhere I look. However, in the URL, it shows up as "DesignJobRequestFormFINAL011325PROOFV1B" and I'm not sure why. I can't find where to fix this. Does anyone have any
                                  • Consumers are talking about your business. Are you listening?👂

                                    A loyal customer might be praising your product in a forum. A frustrated user could be posting a harsh review on a public site. An excited partner may have left a comment on your campaign. A domain expert might be deconstructing your product. A prospect
                                  • What counts as a Temp for Billing Purposes in Workerly

                                    I'm considering trying this product but am not sure how the temp count is used for billing purposes. For example, if we keep a large data base of 500 potential workers.....are we billed for that or only if they are assigned to a client at a given point
                                  • Cold emails not allowed?

                                    I planned to use Zoho Mail to send businesses some cold emails to offer my freelance writing services, but I noticed that the anti-spam policy is very strict -- no commercial emails whatsoever without prior permission from the recipient? I would be very
                                  • Form name incorrectly displayed in URL

                                    Hi, I have a form I created called "Design Request form". It displays this way everywhere I look. However, in the URL, it shows up as "DesignJobRequestFormFINAL011325PROOFV1B" and I'm not sure why. I can't find where to fix this. Does anyone have any
                                  • I can't receive mail

                                    Hello, I can't receive e-mail. I no longer receive e-mails to the e-mail I received for ​my site. I also edited the DNS settings, but it doesn't work at all.
                                  • 1‑to‑1 invite missing post-setup (needs re-invite) vs channel invite auto-joins without business prompt

                                    1. Zoho Cliq 1‑to‑1 external invite The inviter sent a 1‑to‑1 invite to an invitee who didn’t have a Cliq account. After the invitee completed account setup and created a business/organization, the website redirected them to Cliq, where they opened Cliq
                                  • 【開催報告】東京 ユーザー交流会 Vol.3 2025/10/17 Zoho サービスの活用促進を外部ツールとの連携で実現!

                                    ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 10月17日(金)に新橋で「東京 ユーザー交流会 Vol.3」を開催しました。ご参加くださったユーザーの皆さま、ありがとうございました! この投稿では、当日のセッションの様子や使用した資料を紹介しています。残念ながら当日お越しいただけなかった方も、ぜひチェックしてみてください😊 ユーザー活用事例セッション:Zoho Flowと決済システムの連携 あみろくの岡島さんに、Zoho サービスの活用事例として、Zoho Flow を活用した外部サービスとの連携事例をご共有いただきました。
                                  • received email opens in a new tab every time I log in

                                    as per the title: since about when I first made my email account, every single time Ive logged in to view my inbox, a new tab opens for an email I viewed once as if restoring a closed session. I thought I just didnt understand the "starting up" settings
                                  • Engage with your customers at scale using WhatsApp Marketing Template messages

                                    Hi everyone, To make it easier for organizations to communicate with customers, Desk now allows you to send individual, mass, and bulk WhatsApp template messages from both the Ticket and Contact modules. How is this going to benefit your business? WhatsApp
                                  • Importation Tickets error

                                    Hi, I'm newbie here 🤓 So, i'm importing data from csv, but when I try advance to mapping fields the importer tool show this message: Previously I try import, other data, and not show errors in this step. Some ideas? Best Regards,
                                  • Showing description in timesheet and timelogs.

                                    I am wondering if it’s possible in version 5 of Zoho People to have the description show by default or with a manipulation on the user’s part. Let me show you what I mean. As you can see this is the view for the users. Now if they want to see the full
                                  • Workaround: openURL in Blueprints - An alternate approach

                                    There is a roundabout way to open a URL in blueprints after a save event. By using the 'onBeforeMandatoryFormSave' in Client Script, you can open an external URL. Now, the problem is, this is designed to be run BEFORE the blueprint is saved, not after,
                                  • MTD SA in the UK

                                    Hello ID 20106048857 The Inland Revenue have confirmed that this tax account is registered as Cash Basis In Settings>Profile I have set ‘Report Basis’ as “Cash" However, I see on Zoho on Settings>Taxes>Income Tax that the ‘Tax Basis’ is marked ‘Accrual'
                                  • Migrate file from Single File Upload to Multi File Upload

                                    Dears, I have created a new field Multi File Upload to replace the old Single File Upload field. I'd like to ask you guys what is the best way to migrate the files to the new field?
                                  • Open "Live Chat" from a hyperlink?

                                    Hi, I often write paragraphs and text on our company website, and usually say you can get in touch with us via live chat. Can the chat window be triggered to pop open without clicking the chat graphic in the bottom window, and use it in a hyperlink? ie:
                                  • Zoho Sites search box

                                    Is there a Search box that can be added to a Zoho site? It would be for searching within the site only.
                                  • What stops me from packaging and shipping an order when the inventory is negative?

                                    It seems if the inventory value is negative, that Zoho Inventory should not allow me to create a Package and Ship it.   But, there seems to be nothing to stop me from doing that other than when I go to physically package the item and realize that there is no stock. There also seems to be nothing on the screen that even indicates to me that I should not package and ship.  To me this is the fundamental point of an inventory system.  Am I doing something wrong?   
                                  • Conditional formatting based on another field

                                    Hi I have two fields on my form stage 1 complete and stage 1 deadline.  I am trying to setup conditional formatting so that if stage 1 complete is after stage 1 deadline the record is highlighted in red. I need both stage 1 complete and stage 1 deadline
                                  • The sending IP (136.143.188.15) is listed on spamrl.com as a source of spam.

                                    Hi, it just two day when i am using zoho mail for my business domain, today i was sending email and found that message "The sending IP (136.143.188.15) is listed on https://spamrl.com as a source of spam" I hope to know how this will affect the delivery
                                  • Changing a Single-Line Text field into a Multi-line Field without losing data

                                    Is it possible to change a Single-Line Text field into a Multi-line Field without losing data. I have a module with data for which I would like to change a single-line field into a multi-line field but I'm worried it might delete the pre-existing da
                                  • Webhook - Google Sheets

                                    I have 2 forms that are both integrated with Google Sheets. I've set up a webhook to pull form 1 data from Google Sheets to prefill data in Form 2. The issue I have is that the forms name fields are First Name & Last Name but the Google sheets integration
                                  • Verified Mark Certificate

                                    Hello Dears, Can anyone help and check my mail or direct me to the desired person who can add the verification tag to my mail https://www.zoho.com/blog/mail/email-authentication-with-bimi.html
                                  • Appointment booking is temporarily unavailable

                                    Embeded Zoho booking page in my WordPress website. When someone starts a booking, after choosing time and date, an error appears before payment - "Appointment booking is temporarily unavailable due to restricted settings." Used the embeded code given
                                  • Next Page