Kaizen #133 - Deciding on the type of applications: Self-client or Server-based?

Kaizen #133 - Deciding on the type of applications: Self-client or Server-based?

Welcome back to the Kaizen series!

In this week's post in the Kaizen series, we will discuss self client and server-based clients in Zoho CRM. We will explain these two client types in separate videos, along with their practical application using Java SDKs.

How authorization is done in Zoho CRM?

In Zoho CRM, the protocol used for authorization is OAuth 2.0. OAuth 2.0 is an industry standard protocol specification that enables third-party applications or clients to gain delegated access to protected resources in Zoho via an API.

You can use self client when the app you develop is intended to communicate with your own Zoho account and it doesn't have a domain and redirect URL. You can also use this option when your application is a standalone server-side application performing a back-end job.

Scope

Scope is a set of permissions for which the token has to be generated for a client. OAuth2.0 scopes in Zoho CRM determine a client/web app's access rights to specific resources. Scopes dictate:
  • Resource accessed (e.g., Users, Modules, Files)
  • Permissible operations (e.g., ALL, READ, WRITE, CREATE, UPDATE, DELETE)

When you register an app in Zoho API Console, you typically choose a client type based on the type of usecase which you are trying to solve using the ap. The different client types available are 
  • Server-based
  • Client-based
  • Self client
  • Non-browser-based
  • Mobile-based

Self Client 

When your application does not have a redirect URL or a web UI, operating solely in the backend without requiring user interaction, self client type is the appropriate choice. Consider that you have a legacy product management system and want to perform data sync between Zoho CRM and the system, then you must use the self client.
A self-client is commonly employed when both the application and Zoho services are managed by the same person, aiming to establish secure communication between them. 
Here's a summary of the process of using self client type:
  • Register your app as a self-client in the Zoho API Console.
  • Obtain client details such as client ID and client secret.
  • Specify the necessary scopes for your app to access CRM data.
  • Obtain the grant token.
  • Your app should then initiate API calls to Zoho Accounts to create access & refresh tokens using Zoho CRM SDKs
  • Utilize this access token for API calls to Zoho CRM.


You can refer the sample code used in the video for data sync in the attached code.


Server-based Client

If you are developing an app that's intended for use by multiple Zoho accounts, you can use Server-based OAuth App. This app could be solving a special usecase for all Zoho accounts. The app should have both a dedicated backend server and web UI to handle the authorization process and the app's logic. The app redirects users to Zoho for the authorization process using a web browser. Users grant permission for the app to access their Zoho data on their behalf. The app will consume data for it's intended purposes on behalf of the user who authorized the app.



You can refer the sample code used in the video for lead management in the attached code.

We hope you found this post useful and improved your understanding. Let us know your thoughts in the comment section or write to us at support@zohocrm.com.




    Access your files securely from anywhere

        All-in-one knowledge management and training platform for your employees and customers.







                              Zoho Developer Community




                                                    • Desk Community Learning Series


                                                    • Digest


                                                    • Functions


                                                    • Meetups


                                                    • Kbase


                                                    • Resources


                                                    • Glossary


                                                    • Desk Marketplace


                                                    • MVP Corner


                                                    • Word of the Day


                                                    • Ask the Experts



                                                              • 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


                                                              Manage your brands on social media



                                                                    Zoho TeamInbox Resources



                                                                        Zoho CRM Plus Resources

                                                                          Zoho Books Resources


                                                                            Zoho Subscriptions Resources

                                                                              Zoho Projects Resources


                                                                                Zoho Sprints Resources


                                                                                  Qntrl Resources


                                                                                    Zoho Creator Resources



                                                                                        Zoho CRM Resources

                                                                                        • CRM Community Learning Series

                                                                                          CRM Community Learning Series


                                                                                        • Kaizen

                                                                                          Kaizen

                                                                                        • Functions

                                                                                          Functions

                                                                                        • Meetups

                                                                                          Meetups

                                                                                        • Kbase

                                                                                          Kbase

                                                                                        • Resources

                                                                                          Resources

                                                                                        • Digest

                                                                                          Digest

                                                                                        • CRM Marketplace

                                                                                          CRM Marketplace

                                                                                        • MVP Corner

                                                                                          MVP Corner









                                                                                            Design. Discuss. Deliver.

                                                                                            Create visually engaging stories with Zoho Show.

                                                                                            Get Started Now


                                                                                              Zoho Show Resources

                                                                                                Zoho Writer

                                                                                                Get Started. Write Away!

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

                                                                                                  Zoho CRM コンテンツ




                                                                                                    Nederlandse Hulpbronnen


                                                                                                        ご検討中の方