OAuth2 Connection to ZohoCRM API Not Working

I am trying to integrate ZohoCRM with n8n via OAuth2.

Based on my understanding of the documentation, I’m supposed to:

1.) Register a server-based client in Zoho Api Console

2.) Set up the redirect URI to point to n8n

3.) Send a Post request from n8n with the client ID and secret to get the access and refresh tokens

I have set up the request in n8n as shown below:

I have also filled in the correct client secret and ID as per what’s in the Zoho API Console:

I have also set the scope. I have also added the correct redirect URI to the Zoho API Console:

However, when I try to click on “Connect” in n8n, I get an error page from Zoho:

I’m not sure whether the problem is with n8n or Zoho. Has anyone got experience setting up the OAuth2 connection with Zoho CRM? Please help.

It looks like your topic is missing some important information. Could you provide the following if applicable.

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

Version is 1.72.1
Not sure what the database is as I’m using the cloud version
Not sure what the EXECUTIONS_PROCESS setting is either because I’m on the cloud version
Operating system… Mine or the one n8n is running on? Not sure because I’m using the cloud version

I have this setup in a workflow, so I guess it will be the same - apologies if it is not.

In the credentials popup:

The Authorization URL should be: https://accounts.zoho.com/oauth/v2/auth

The Access Token URL should be: https://accounts.zoho.com/oauth/v2/token

This works for me.

check my setup and solution

and this setup

Hi! I looked at Liam’s solution to this and it mostly works, except you have to be careful about how many times you use the refresh token as you can only generate max 10 access tokens per 10 minutes. The good news is, however, that N8n Cloud now has a custom Zoho OAuth2 connection in its ‘Predefined Credentials’ category, making it super easy to connect. Only downside of this is that I still can’t see how you can add or remove scopes from this connection.

If you’re self-hosting N8n you may still need to implement a manual workflow like Liam’s and manage your own regular access token refresh. A community Zoho OAuth2 API node that manages this would be great. I’m not good enough to build one yet, but will look out for it and maybe bang it out one day if someone else doesn’t.