--- title: "Register the Client" url: https://docs.catalyst.zoho.com/en/tutorials/invoice-notifier/python/register-client/ description: "Create an Event Driven Architecture to automate invoice updates from Zoho Books to Zoho Cliq using Event Functions and Catalyst Signals." last_updated: 2026-08-17T12:16:04Z service: All Services type: tutorial related_links: - name: "Catalyst API Documentation" url: /en/api/introduction/overview-and-prerequisites/#OverviewandPrerequisites --- # Register the Client Application in Zoho API Console To enable secure and authorized communication between Catalyst and Zoho Cliq, you must register your client application in the Zoho API Console. This step is necessary to generate OAuth credentials that will be embedded in the Event Function code. By registering the client, you will receive the following: * **Client ID**: A unique identifier assigned to your registered application. * **Client Secret**: A confidential key used along with the Client ID to authenticate the client. We will use these credentials to generate the following OAuth tokens: * **Grant Token (code)**: A temporary token generated using the Client ID and Client Secret in the API console. This is used to fetch the Refresh Token. * **Refresh Token**: A persistent token used to request new Access Tokens when the previous ones expire. We will generate this in the REST API client in the next step. * **Access Token**: A temporary token that authorizes Zoho Cliq API calls. You do not need to manually generate this, as it will be automatically handled using the Refresh Token during runtime. The Client ID, Client Secret, and Refresh Token are added to the Event Function code. They enable Catalyst to programmatically perform actions (like posting messages) in your Zoho Cliq channel. The function will use the Refresh Token to continuously retrieve fresh Access Tokens, ensuring uninterrupted connectivity between Catalyst and Cliq. To register the client application in Zoho API console: 1. Go to the [Zoho API Console](https://api-console.zoho.com/) and click **Get Started** or **Add Client**. ![Zoho API Console](https://catalyst-docs-development.zohostratus.in/images/tutorials/invoice-notifier/api-console.webp) 2. Choose **Self Client** as the client type. Since both the Catalyst and the Cliq accounts are configured in the same organization, a Self Client can be used for this application. ![Choosing the client type](https://catalyst-docs-development.zohostratus.in/images/tutorials/invoice-notifier/self-client.webp) 3. In the popup, click **Create** to register your client. ![Creating a new self-client](https://catalyst-docs-development.zohostratus.in/images/tutorials/invoice-notifier/new-client.webp) The API console will generate and display the Client ID and Client Secret values for the registered client. ![Client Credentials for the new self-client](https://catalyst-docs-development.zohostratus.in/images/tutorials/invoice-notifier/client-credentials.webp) 4. Now, click the **Generate Code** tab to generate the Grant Token. - In the **Scope** field, enter: `ZohoCliq.Webhooks.CREATE` - Add a **Description** for the scope. - Set a **Time Duration** for the Grant Token. ![Generating grant token](https://catalyst-docs-development.zohostratus.in/images/tutorials/invoice-notifier/generate-code.webp) 5. Click **Create**. Once created, the Grant Token (code) will be displayed. ![Grant token](https://catalyst-docs-development.zohostratus.in/images/tutorials/invoice-notifier/grant-token.webp) Copy the generated Client ID, Client Secret, and Grant Token, and keep them ready. We will use these values in the upcoming step to generate the Refresh Token and configure the function files in the project.