Hi everyone,
I wanted to share that I found a workaround since I couldn’t get the Generic OAuth2 credential to store the refresh token correctly in v2.12.3.
Instead of using the built-in Credential system, I switched to a manual flow using the HTTP Request Node:
-
App Creation: Created the app in api-console.zoho.eu as a “Server-based Application.”
-
Authorization Code: Generated the initial code manually via the browser (using the required scopes).
-
Refresh Token: Used Insomnia (or Postman) to exchange that code for a permanent
refresh_token. -
n8n Implementation:
-
I store the
refresh_tokenin an n8n variable node. -
I use an HTTP Request Node at the start of my workflow to call
https://accounts.zoho.eu/oauth/v2/tokenwithgrant_type=refresh_token. -
This gives me a fresh
access_tokenvalid for 1 hour, which I then pass to my WorkDrive API calls.
-
It requires a few more nodes in the workflow, but it’s 100% stable and avoids the 60-minute expiry issue I was having with the generic credentials.
Thanks @tamy.santos and @pvdyck for the support!