Possible to use REST API without a user to perform the interactive login?

Possible to use REST API without a user to perform the interactive login?

Hi,

I am hoping to use the CRM API to push data into ZOHO CRM from our enterprise application. This may need to happen at any time of day and there could be a long interval between calls to the API. Also, there will not be a user triggering the request so we are not able to rely on the usual OAuth login process.

I have been looking at the options available for generating access tokens to access the API and it seems that Self Client is the only option that might work for us (as all the other application types expect a ZOHO user to login to retrieve an authorization code).

Using Self Client, we could generate a code with the correct scopes that would be valid for 10 minutes, and then supply this to our application so that it can retrieve access tokens and refresh tokens for the foreseeable future.

This is not ideal for a few reasons:
  1. The user that generated the code would need to continue to be a licensed user of ZOHO and having the code tied to a particular user is not ideal;
  2. The users email address would need to be stored in our application for initializing the API;
  3. If anything went wrong with our token store we would need to go through this manual process to generate a new code with the correct scopes.
  4. The Self Client application functionality appears to be only for testing the api and I am concerned it may change or not exist in the future.
I understand that this may not be the intended use for the Self Client application but am unable to find another way for our application to authenticate to the API without a user logging in.

Is there a better way to perform what we are trying to do?

I have looked at Functions and Connections, but they do not seem to cater for what we are trying to achieve as connections appear to be for outgoing connections and functions have too many limitations for our use case. It seems that the API and SDK should really cater for our scenario so I feel I might be missing something?

Any advice on how to perform what we are trying to achieve would be greatly appreciated!

Thank you,
Steve
    • Sticky Posts

    • Kaizen #198: Using Client Script for Custom Validation in Blueprint

      Nearing 200th Kaizen Post – 1 More to the Big Two-Oh-Oh! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
    • Kaizen #226: Using ZRC in Client Script

      Hello everyone! Welcome to another week of Kaizen. In today's post, lets see what is ZRC (Zoho Request Client) and how we can use ZRC methods in Client Script to get inputs from a Salesperson and update the Lead status with a single button click. In this
    • Kaizen #222 - Client Script Support for Notes Related List

      Hello everyone! Welcome to another week of Kaizen. The final Kaizen post of the year 2025 is here! With the new Client Script support for the Notes Related List, you can validate, enrich, and manage notes across modules. In this post, we’ll explore how
    • Kaizen #217 - Actions APIs : Tasks

      Welcome to another week of Kaizen! In last week's post we discussed Email Notifications APIs which act as the link between your Workflow automations and you. We have discussed how Zylker Cloud Services uses Email Notifications API in their custom dashboard.
    • Kaizen #216 - Actions APIs : Email Notifications

      Welcome to another week of Kaizen! For the last three weeks, we have been discussing Zylker's workflows. We successfully updated a dormant workflow, built a new one from the ground up and more. But our work is not finished—these automated processes are