# Event Listeners -------------------------------------------------------------------------------- title: "Introduction" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the Catalyst components, or in a custom source, or in an associated Zoho service respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.534Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/introduction/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Event Listeners ### Introduction Event Listeners is a Catalyst Cloud Scale component that functions as an event bus service, listening for predefined events and automatically triggering the corresponding {{%link href="/en/serverless/help/functions/event-functions/" %}}Event functions{{%/link%}} or targeted {{%link href="/en/serverless/help/circuits/introduction/" %}}Circuits{{%/link%}}. It’s particularly useful for automating recurring tasks or workflows that are tied to specific events within your application. With the event-driven architecture powered by Catalyst, this component helps ensure reliable, real-time execution of actions whenever those events occur. {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} Catalyst Event Listeners also allow you to transport a stream of real-time data from various Catalyst components in the application, or from custom sources, to the functions that are invoked as a result. You can associate rules with an event listener and define the exact source to listen to for events, and the actions to be taken upon their occurrence. There are three types of Catalyst Event Listeners: 1. {{%bold%}}Catalyst Component Event Listener:{{%/bold%}} The Catalyst component event listener can link an event that occurred in one of your Catalyst components to the execution of a target event function or circuit. This is created by default. 2. {{%bold%}}Custom Event Listeners:{{%/bold%}} You can create custom event listeners which function differently from the Catalyst component event listener. When you create a custom event listener in Catalyst, a URL is automatically generated for it. Whenever this URL is invoked by the end user, this event listener triggers the execution of the target event function or circuit. 3. {{%bold%}}Zoho Events:{{%/bold%}} You can also create Zoho event listeners that listen for and capture events occurring in other Zoho services that you have configured, such as Zoho CRM. These event listeners will get invoked every time a specific, associated event in the external service occurs, and Catalyst will execute the target event function or circuit as a result. You can access and configure event listeners for your project from the Catalyst console. The console also provides statistics on the performance of each of your event listeners, details of queued events, and drilled-down execution history for every rule of an event listener. You can also see a sample pattern of the data that will be sent to the target function or circuit for every rule. Catalyst also provides you with the flexibility to create {{%link href="/en/devops/help/application-alerts/introduction" %}}application alerts{{%/link%}} for event listeners directly from the Event Listeners' Rules section in the console, instead of navigating to the {{%italics%}}Application Alerts{{%/italics%}} component. {{%note%}}{{%bold%}}Note:{{%/bold%}} You will not be able to configure or work with event listeners from the CLI or using the SDKs. However, you can generate sample payloads for both component and custom event sources in the CLI, and test event functions in the local environment. Refer to the {{%link href="/en/cli/v1/event-generate/introduction" %}}Event Generate help page{{%/link%}} to learn more. {{%/note%}} <br /> -------------------------------------------------------------------------------- title: "Benefits" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the Catalyst components, or in a custom source, or in an associated Zoho service respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.534Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/benefits/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Benefits {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} 1. {{%bold%}}Enabling Automation and Data Flow in the Application:{{%/bold%}}<br /> Catalyst event listeners reduce manual efforts involved in building complex code by easily facilitating automated data and logic flow between various loosely coupled and distributed components of your application. When you configure an event listener and associate it with the execution of a reusable behavior, the workflow is streamlined and automated based on event occurrences. This enables a faster and more effective application building process. 2. {{%bold%}}Delivering Real-Time Data:{{%/bold%}}<br /> Catalyst event listeners deliver a stream of real-time data from the various components of your application or from a custom source that you define. It also provides you complete control over this real-time data, by enabling you to route and process it as per your needs. You can enable the components of your application to react to the real-time data and build event-driven architectures in an easy manner. 3. {{%bold%}}Rapid Processing and Auto Scaling:{{%/bold%}}<br /> Catalyst supports the invocation of multiple event listeners and rules of various types. You can configure multiple rules in a Component event listener or a Zoho event listener, and create multiple custom event listeners as per your requirement. These can be associated with multiple endpoints as well. The target functions of the invoked rules are processed without any reduction in data throughput or increase in latency. Catalyst servers auto scale to provide the required resources to maintain the consistency of your application's performance. 4. {{%bold%}}Automate Workflows from an Event Occurrence:{{%/bold%}}<br /> You can invoke a {{%link href="/en/serverless/help/circuits/introduction/" %}}Circuit{{%/link%}} for an event listener rule execution and orchestrate a workflow. While you can configure multiple event functions to be triggered for an event listener rule, triggering a Circuit allows you to execute multiple Basic I/O functions sequentially or in parallel, based on how you {{%link href="/en/serverless/help/circuits/implementation/#configure-a-circuit" %}}configure the circuit{{%/link%}}.<br /> Choosing a Circuit as the target of your event listener also allows you to handle failures, perform conditional executions that are recursive, sequential or parallel, pass processed data between each state, and even have perform fallback handling in cases of failure. 5. {{%bold%}}Statistics, Queued Events, and Processed Events:{{%/bold%}}<br /> The statistics of an event listener displayed in the console enable you to monitor and analyze its performance easily. You can also view Queued Events that show events that are captured in real-time by the event listeners and are currently being processed. Additionally, you can also pause, delete, bulk-delete and resume the queue of events. After they are processed, you can view the details of the processed events of each rule in every event listener. The processed event details contain insights of event traffic, and provide crucial information about the execution history of each rule in an event listener. 6. {{%bold%}}Compatible with Budgetary Constraints:{{%/bold%}}<br /> Catalyst innovative form of pricing is calculated based on the number of API calls made. If you detect an error in your application, by pausing the queue you pause the processing of the events and the execution of their associated functions. You can debug while the queue is paused or even delete the entire queue of events to ensure no unnecessary API calls are being made during the debugging stage, thereby enabling you to have more control of your monetary resources. <br /> -------------------------------------------------------------------------------- title: "Use Cases" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the Catalyst components, or in a custom source, or in an associated Zoho service respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.534Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/use-cases/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Use Cases {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} Catalyst Event Listeners can be used in the following scenarios: * An event application features upcoming events in a locality. When a user is interested in an event, they click on a CTA button for that event and navigate to the event's page to view more details about it. The button click invokes a Catalyst custom event listener's URL in the background and passes certain data about the user's interest. This URL invocation is associated with a target function that processes the data and sends a customized automated promotional email to the user about upcoming events similar to the one the user was interested in. <br /> -------------------------------------------------------------------------------- title: "Terminology" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the components or in a custom source respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.534Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/terminology/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Terminology {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} Before you read more about Catalyst Event Listeners, ensure that you understand the following terms in the context of Catalyst: * {{%bold%}}Event Listener:{{%/bold%}} An event listener, whether component event listener, custom, or a Zoho event listener can trigger the execution of{{%link href="/en/serverless/help/functions/event-functions/" %}}event functions{{%/link%}}, or a {{%link href="/en/serverless/help/circuits/introduction/" %}}circuits{{%/link%}}. It cannot trigger the execution of any other type of function, and an event function cannot be invoked in any other way. You can associate multiple rules with an event listener, and each rule can trigger multiple event functions or any target circuits. When an event listener is created in Catalyst, a unique **Event Listener ID** is created for it automatically. This ID and the name of the event listener are passed as part of the event bus details to the target function or circuit. Each project can contain a maximum of five event listeners: four custom and one component event listeners. * {{%bold%}}Rules:{{%/bold%}} A rule defines the specific action that will trigger the component or custom event listener. * {{%bold%}}Component event listener{{%/bold%}}: A rule is associated with the instances of a particular component, and a set of actions occurring in them. * {{%bold%}}Custom event listener{{%/bold%}}: Each rule acts as an individual instance of the event listener and is identified by a unique rule identifier. * {{%bold%}}Zoho event listener{{%/bold%}}: A rule is associated with a specific event occurring in an associated Zoho service. <br><br> You will learn about this in detail in the next section.<br /><br /> A rule matches the incoming event with the execution of the associated event function or target circuit and routes the data for processing. A unique Rule ID is automatically created when you create a rule for an event listener. * {{%bold%}}Events:{{%/bold%}} * {{%bold%}}Component event listener{{%/bold%}}: A specific action occurring in a component is considered to be an event. For example, a table in the Data Store being updated or a user signing up for your application. The complete list of component events is given in the next section. * {{%bold%}}Custom event listener{{%/bold%}}: An event is said to have occurred when the event listener's URL is invoked by the end-user of your application. * {{%bold%}}Zoho event listener{{%/bold%}}: A specific action occurring in an external Zoho service, such as Zoho CRM. For example, Leads Created, Sales Order Updated, Campaigns Approved, or Email Sent in the CRM account associated with the particular rule. * {{%bold%}}Queued Events:{{%/bold%}} When an event for which an event listener rule has been configured has occurred, the associated rule will be triggered. The event will then be queued for processing. Each event listener that you create will have its individual queue. Catalyst will invoke the associated target functions or circuits for execution during the processing, and pass the event data to them. After the function or circuit completes its execution, or if it fails to execute, the event will be removed from the queue.<br /><br /> For example, if you had configured a rule with a table insert event in the Data Store, the component event listener will be listening for an insert action in that table. When that action occurs, the associated rule will be triggered, and the event will be queued for processing. In the case of a custom event listener, when the URL of the event listener is invoked, the event will be queued until the rule has triggered the associated functions and they complete their execution. You can view detailed information of events when they enter a queue and are being processed from the {{%link href="/en/cloud-scale/help/event-listeners/queued-events" %}}Queued Events{{%/link%}} section in the console. * {{%bold%}}Processed Events:{{%/bold%}} After the associated target function or a circuit of a component or a custom event listener rule executes successfully, it will be considered as a processed event. The {{%link href="/en/cloud-scale/help/event-listeners/processed-events/" %}}Processed Events{{%/link%}} section in the console will contain detailed information about the event traffic and execution history of each rule that was executed. * {{%bold%}}Failed Events:{{%/bold%}} If the execution of the associated target functions or circuits of a component or a custom event listener rule is a failure, or if the rule fails to invoke the target functions or circuits for any reason, it will be considered as a failed event. <br /> -------------------------------------------------------------------------------- title: "Component Event Listener" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the Catalyst components, or in a custom source, or in an associated Zoho service respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.534Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/component-event-listeners/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Catalyst Component Event Listener ### Introduction {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} Every Catalyst project contains one component event listener that is created when the project is created. As mentioned in the previous sections, the behaviors and functionalities of the component and custom event listeners vary. The Catalyst component event listener is used to link a Catalyst component to a target function or circuit, and pass the component data to the function or circuit when it is invoked. The following table describes the list of Catalyst components and the event occurrences in them that can be associated with the component event listener: <table class="content-table"> <thead> <tr> <th class="w20p">Component</th> <th class="w30p">Event</th> <th class="w50p">Description</th> </tr> </thead> <tbody> <tr> <td>Data Store</td> <td>Insert <br> Update <br> Delete</td> <td>Data is inserted in the associated tables <br> Data is updated in the associated tables <br> Data is deleted from the associated tables</td> </tr> <tr> <td>Cache</td> <td>Put</td> <td>Data is written to the associated Cache segments</td> </tr> <tr> <td>Authentication</td> <td>Sign Up <br> Delete</td> <td>A user signs up for the application <br> A user is deleted from the application</td> </tr> <tr> <td>File Store</td> <td>Upload</td> <td>A file is uploaded in the associated folders</td> </tr> <tr> <td>GitHub</td> <td>Success <br> Failure</td> <td>Github deployment is successful <br> Github deployment is a failure</td> </tr> <tr> <td>Web Client</td> <td>Hosted</td> <td>Web client is hosted in the project</td> </tr> </tbody> </table> {{%note%}}{{%bold%}}Note:{{%/bold%}} {{%list%}}* You can associate the actions of any one component with a particular rule.{{%/list%}} {{%list%}}* You can associate multiple events in a component with a single rule.{{%/list%}} {{%list%}}* You can also execute multiple target functions for a rule.{{%/list%}} {{%list%}}* You will not be able to rename or delete the component event listener. However, you can {{%link href="/en/cloud-scale/help/event-listeners/working-with-rules/#delete-a-rule" %}}delete{{%/link%}} the rules you create in it.{{%/list%}} {{%/note%}} For example, assume that a component event listener's rule is associated with the Upload file event in three folders: _Folder1_, _Folder2_, and _Folder3_ in the File Store. Its target functions are _Function1_ and _Function2_. This means that whenever a file is uploaded to one of these three folders, both _Function1_ and _Function2_ are executed. The data from the event, such as the folder ID, file name, and time of event for all three folders is passed to both _Function1_ and _Function2_ in a predefined pattern. The data is always passed to the target function or circuit from the event listener in the {{%bold%}}JSON format{{%/bold%}}, and this data can be processed within your circuit or function to carry out your required action. A {{%bold%}}sample data pattern{{%/bold%}} is shown in the console when you create a rule. This shows a sample structure of the data that will be passed to the function when the event occurs. The data pattern varies based on the component and the actions that the rule is associated with, because different events will contain different data. For example, if a rule is associated with an Authentication signup event, the event data would of the following pattern: {{%code class="language-json line-numbers" scroll="set-scroll" %}} { "project_details": { "id": 57*************, "project_name": "Eventbus" }, "event_bus_details": { "name": "Default", "id": 57************* }, "data": { "platform_type": null, "user_details": { "email_id": "emma@zylker.com", "role_details": { "role_name": "App User", "role_id": 57************* }, "zaaid": 1002347509, "created_time": "Sep 10, 2019 11:47 PM", "invited_time": "Sep 10, 2019 11:47 PM", "modified_time": "Sep 10, 2019 11:47 PM", "user_id": 57*************, "is_confirmed": true, "last_name": "", "first_name": "Amelia Burrows", "zuid": 1002342431, "status": "ACTIVE" }, "org_id": 1002347509, "zaid": 1002345135, "redirect_url": null }, "current_project": { "id": 57*************, "project_name": "Eventbus" }, "action": "SignUp", "source": "UserManagement", "event_time": 1568139437092 }{{%/code%}} <br /> The rule passes the user and sign up data, along with the project details, and other meta data about the event. You can code your target function or configure your circuit to process the event data however you require. Let us now work with event listeners in the Catalyst console. ### Create a Rule in the Component Event Listener You can access the _Event Listeners_ component from the _Triggers_ section in *Cloud Scale* section of the console. The Catalyst component event listener will already be present there by default. {{%note%}}{{%bold%}}Note:{{%/bold%}} You can create upto 50 rules in the component event listener in the {{%link href="/en/deployment-and-billing/environments/development-environment/" %}}development environment{{%/link%}}. You can request Catalyst for an increase in this limit by contacting our support at {{%link href="mailto:support@zohocatalyst.com" %}}{{%bold%}}support@zohocatalyst.com{{%/bold%}}{{%/link%}}. We will address each request on a case-by-case basis. There are no upper limits for rule creation in the production environment.{{%/note%}} To create a rule in the component event listener: 1. Navigate to {{%bold%}}Event Listeners{{%/bold%}} under _Triggers_ in the *Cloud Scale* section of the Catalyst console.<br /> <br /> The Event Listeners page will display the Catalyst Component Events tile with the day's statistics of {{%link href="/en/cloud-scale/help/event-listeners/terminology/" %}}processed, failed, and queued events{{%/link%}} 2. Click {{%bold%}}View{{%/bold%}} on the event listener's tile to open it.<br /> <br /> 3. Click {{%bold%}}Create Rule{{%/bold%}}.<br /> <br /> 4. Enter a name and a description for the rule.<br /> <br /> 5. Select a component from the dropdown list to associate the rule with. When you select a component, the pop-up will display a sample structure of the data that will be passed to the target function or circuit. This data pattern varies for each component that you select, as mentioned earlier.<br /><br />Based on the component that you selected, you might need to provide additional information. For example, if you choose "Data Store", you can select one or more tables to associate the rule with. 6. Select the actions occurring in the component to associate the rule with. These actions also vary based on the component, as discussed earlier.<br /> <br /> {{%note%}}{{%bold%}}Note:{{%/bold%}} If you select "Web Client" as the component, the Action field will not appear. Selecting Web Client indicates that the rule will be triggered when a web client is hosted in the project.{{%/note%}} 7. Choose **Function** or **Circuit** as your *Target Point*: - If you choose to trigger **Functions**:<br /> Select the target functions to invoke when the event occurs. You can select one or more functions.<br /> <br /> - If you choose to trigger {{%bold%}}Circuits{{%/bold%}}:<br /> Select the target circuits from the drop-down list. You can select one or more circuits.<br /> <br /> {{%note%}}{{%bold%}}Note:{{%/bold%}} * If you choose Functions as your target, the drop-down will only list {{%link href="/en/serverless/help/functions/event-functions/" %}}event functions{{%/link%}}. * If you choose Circuits as your target, the drop-down will list all the circuits you had previously created. * If you have not created an event function or a circuit prior to configuring your event listener, click **Create New** in the drop-down and you will be directed to the respective component section to create your {{%link href="/en/serverless/help/functions/event-functions/#introduction" %}}event function{{%/link%}} or {{%link href="/en/serverless/help/circuits/implementation/#create-a-circuit" %}}circuit{{%/link%}}.{{%/note%}} 8. Click {{%bold%}}Create{{%/bold%}}. The rule is now created. You can view a list of all the rules and their details of the component event listeners from its section. <br /> When you click on a rule's name from the list, you will view the details of the rule and its sample data pattern. <br /> You can refer the {{%link href="/en/cloud-scale/help/event-listeners/processed-events/" %}}Processed Events{{%/link%}} and {{%link href="/en/cloud-scale/help/event-listeners/queued-events/" %}}Queued Events{{%/link%}} pages for details about those sections. <br> ### Configure Alerts for Catalyst Component Listeners As mentioned {{%link href="/en/cloud-scale/help/event-listeners/introduction/" %}}earlier{{%/link%}}, you can configure automatic email alerts to be sent to you if the event listener encounters a failure, code exception or a process timeout. You can configure these alerts in the Event Listeners section directly without having to navigate to the {{%link href="/en/devops/help/application-alerts/introduction/" %}}*Application Alerts*{{%/link%}} component. 1. Click the **+ Configure** button in the event listener's details section to configure an alert. <br /> 2. Click **Confirm** after configuring the alert to enable it. <br /> 3. You can also delete the alert by clicking the ellipsis icon beside the alert status and clicking **Remove**. <br /> <br /> -------------------------------------------------------------------------------- title: "Custom Event Listeners" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the components or in a custom source respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.535Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/custom-event-listeners/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Custom Event Listeners ### Introduction {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} A custom event listener is used to pass data to a target function or circuit whenever its URL is invoked by the end user. You cannot associate an event occurrence in a component with a custom event listener. Any event listener that you create in Catalyst will be a custom event listener, as the component event listener is present by default. {{%note%}}{{%bold%}}Note:{{%/bold%}} You can create upto 4 custom and Zoho event listeners in a project. Catalyst allows you to create upto 50 rules in each custom event listener. You can request Catalyst for an increase in this limit by contacting our support at {{%link href="mailto:support@zohocatalyst.com" %}}{{%bold%}}support@zohocatalyst.com{{%/bold%}}{{%/link%}}. We will address each request on a case-by-case basis. {{%/note%}} Let's understand the behavior of a customer event listener in a logical sequence: 1. When you create a custom event listener, a URL will be generated for it. The same URL will be used for all the event's rules. You can include this URL in your application's code or use it however you need. 2. You can associate each rule of a custom event listener with a different target function or circuit. You can also send different data in the request body of the event listener's URL for every rule. That is, an event listener's URL invocation can be configured to trigger different functions or circuits and send different data for each rule every time. 3. You can also associate multiple rules to the same target function or circuit, and send different data to the same function or circuit every time. This enables you to use the same function or circuit for different needs. 4. To identify which rule needs to be triggered when a custom event listener's URL is invoked, the rules contain a variable called the {{%bold%}}rule identifier{{%/bold%}}. When a rule is created in a custom event listener, you will need to provide a unique value as its identifier. This rule identifier is associated with only that rule, which in turn associates the target functions or circuits with the rule. 5. Since a custom event listener has the same URL for all its rules, you can indicate which rule must be invoked, by passing the rule identifier value in the request body of the URL. The request body is in the JSON (_application/JSON_ format, and therefore must contain this information as a key-value pair with the key as {{%badge%}}rule\_identifier{{%/badge%}}. You can also pass more information in the request body based on your needs. 6. The URL can only be invoked using the HTTP {{%badge%}}POST{{%/badge%}} method, as other methods do not support the inclusion of form data within the message body of the request. 7. When the event listener's URL is invoked, Catalyst matches the rule identifier specified in the body of the request with a rule of that event listener configured in the console. When the match is a success, Catalyst triggers that rule and passes the event data to the functions or circuits associated with that rule. The event data can then be processed in the target circuit or event function, to carry out the required task. If there is no successful match, it will be a failed event. Let's understand the functioning of a custom event listener better with an example: Assume you create a custom event listener in our Catalyst project. The URL of the event listener will be automatically generated. Now you create a rule (_rule\_1_) in it and provide the value for the rule identifier as _ID1_. This rule executes the target function _Func_ when triggered. Now you create a second rule (_rule\_2_) whose rule identifier is _ID2_ and it executes the same function _Func_ when triggered. That is, both _rule\_1_ and _rule\_2_ have the same invocation URL and they execute the same function. Now, you use this URL in the application's logic in two different places. {{%bold%}}Usage 1:{{%/bold%}} The user submits data through a form (_Form 1_) in the client's homepage and the URL is invoked. You specify the rule identifier as ID1 in the form data of the URL's body. {{%bold%}}Usage 2:{{%/bold%}} The user submits data in a different form (_Form 2_), and the same URL is invoked. You specify the rule identifier as _ID2_ in the form data of the URL's body. Catalyst event listener will be listening for the invocation of this URL. When a user submits data through _Form 1_, the URL is invoked. The body of the HTTP request would contain the form data which includes the rule identifier as shown below: {{%code class="language-json line-numbers" %}}{ "data": "Sample data from Form 1", "rule_identifier": "ID1" } {{%/code%}} <br /> When Catalyst captures this event, it will match the rule identifier _ID1_ to _rule\_1_ configured in the project. When the match is a success, it triggers the function _Func_. It will then pass the event data to the function in the following sample data pattern: {{%code class="language-json line-numbers" %}}{ "project_details": { "id": 57*************, "project_name": "Eventbus" }, "event_bus_details": { "name": "ThirdPartyBus", "id": 13************* }, "data": "Sample data 1", "current_project": { "id": 57*************, "project_name": "Eventbus" }, "action": "Produce", "source_entity_id": 570000000003015, "rule_identifier": "com.abc", "source": "Custom", "event_time": 1568192053790 } {{%/code%}} <br /> If a user submits data through _Form 2_, the same URL will be invoked with the value of the {{%badge%}}rule\_identifier{{%/badge%}} in the request body as _ID2_. When Catalyst captures this event and associates _ID2_ with _rule\_2_, relevant data is passed to _Func_. The data pattern is the same for the rules of all custom event listeners. Let's now create a custom event listener and configure it. <br /> ### Create a Custom Event Listener To create a custom event listener: 1. Click {{%bold%}}Create Event Listener{{%/bold%}} from the _Event Listeners_ section in _Amplify_, in the Catalyst console.<br /> <br /> 2. Enter a name and a description for the custom event listener. Select {{%bold%}}Custom Events{{%/bold%}} as the type.<br /> <br /> 3. Click {{%bold%}}Create{{%/bold%}}. The custom event listener will be created and displayed in the Event Listeners page with its ID and the same {{%link href="/en/cloud-scale/help/event-listeners/terminology/" %}}performance statistics{{%/link%}} as the component event listener. <br /> You can view the details of an event listener by clicking on **View** on its tile. You can also access the URL of the event listener from this page. <br /> The URL of a custom event listener is of the following format: {{%code class="language-json"%}}https://api.catalyst.zoho.com/baas/v1/project/project_id/event-bus/event_listener_id_/produce?ZCFKEY=_zcf_key{{%/code%}} with the values of {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/" %}}Project ID{{%/link%}}, {{%link href="/en/cloud-scale/help/event-listeners/terminology/" %}}Event Listener ID{{%/link%}}, and a unique ZCF Key filled in. <br /> #### Create a Rule in the Custom Event Listener To create a custom event listener: 1. Click on the custom event listener from the _Event Listeners_ page to open it. 2. Click {{%bold%}}Create Rule{{%/bold%}}.<br /> <br /> 3. Enter a name, description, and a {{%link href="#Custom" %}}rule identifier{{%/link%}} for the rule.<br /> <br /> The page displays the sample structure of data that will be passed to the target function or circuit. 4. Choose {{%bold%}}Function{{%/bold%}} or {{%bold%}}Circuit{{%/bold%}} as your *Target Point*: * If you choose to trigger {{%bold%}}Functions{{%/bold%}}:<br /> Select the action and the target event function from the dropdown list. You can currently only select {{%bold%}}Produce{{%/bold%}} to enable passing data to the target function. You can select multiple target functions.<br /> <br /> * If you choose to trigger a {{%bold%}}Circuit{{%/bold%}}:<br /> Select the target circuit from the drop-down list. You can currently only select {{%bold%}}Produce{{%/bold%}} to enable passing data to the target circuit. You can select multiple target circuits.<br /> <br /> {{%note%}}{{%bold%}}Note:{{%/bold%}} * If you choose an event function as your target, the drop-down will only list {{%link href="/en/serverless/help/functions/event-functions/" %}}event functions{{%/link%}}. * If you choose a circuit as your target, the drop-down will list all the circuits you had previously created. * If you have not created an event function or a circuit prior to configuring your event listener, click **Create New** in the drop-down and you will be directed to the respective component section to create your {{%link href="/en/serverless/help/functions/event-functions/#introduction" %}}event function{{%/link%}} or {{%link href="/en/serverless/help/circuits/implementation/#create-a-circuit" %}}circuit{{%/link%}}.{{%/note%}} 5. Click {{%bold%}}Create{{%/bold%}}. The rule will be created in the custom event listener. It will be listed in the event listener's page with its details. The source of a custom event listener is always "**custom**". <br /> Click on a rule's name in the list to view the details of the rule and its data pattern. <br /> {{%note%}}{{%bold%}}Note:{{%/bold%}} You can configure Application Alerts for your Custom Events, in the same manner you configured alerts in the {{%link href="/en/cloud-scale/help/event-listeners/component-event-listeners/#configure-alerts-for-catalyst-component-listeners" %}}Catalyst Component Events{{%/link%}} section.{{%/note%}} Before we discuss managing the rules of your event listeners or processed events, let's quickly go over editing and deleting a custom event listener. #### Edit a Custom Event Listener You can rename a custom event listener or edit its description in the following way: 1. Open the custom event listener from the *Event Listeners* page. 2. Click the ellipsis menu on the top of the page, then click **Edit**. <br /> 3. Update the details of the event listener, then click **Save**. <br /> #### Delete a Custom Event Listener To delete a custom event listener: 1. Open the custom event listener from the *Event Listeners* page. 2. Click the ellipsis menu on the top of the page, then click **Delete**. <br /> 3. Click **Yes, Proceed** in the confirmation pop-up. <br /> <br /> -------------------------------------------------------------------------------- title: "Zoho Event Listeners" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the components or in a custom source respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.536Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/zoho-event-listeners/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Zoho Event Listeners ### Introduction {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} Zoho event listeners listen for events occurring outside Catalyst, in other Zoho products and services. These event listeners listen for a specific configured action in a Zoho service, and trigger the associated target functions or circuits upon the event occurrence, similar to the Component and Custom event listeners. Catalyst currently supports association with the following Zoho services: * {{%bold%}}{{%link href="https://www.zoho.com/en-in/crm/" %}}Zoho CRM{{%/link%}}{{%/bold%}} {{%note%}}{{%bold%}}Note:{{%/bold%}} You can create upto 4 Zoho and custom event listeners in a project. Catalyst allows you to create upto 50 rules in each Zoho event listener. You can request Catalyst for an increase in this limit by contacting our support at support@zohocatalyst.com. We will address each request on a case-by-case basis.{{%/note%}} The following table describes the list of the event occurrences in supported Zoho services that can be associated with a Zoho event listener: <table class="content-table"> <thead> <tr> <th class="w20p"><strong>Zoho Service</strong></th> <th class="w80p"><strong>Events</strong></th> </tr> </thead> <tbody> <tr> <td>Zoho CRM</td> <td>Emails Resubscribe, Partner Leads Rejected, Partner Leads Approved, Partners Rejected, Partners Approved, People Rejected, People Approved, Email Unsubscribe, Scheduled Call Not Attended, Calls Missed, Calls Incoming, Calls Updated, Calls Created, Partner Leads Updated, Partner Leads Created, Partners Updated, Partners Created, People Updated, People Created, Email Sent, Campaign Member Status, Webforms Submit, Emails Insights Bounce, Email Insights Click, Email Insights Open, Email Incoming, Sales Orders Converted, Quotes Converted, Leads Converted, Purchase Orders Rejected, Invoices Rejected, Sales Orders Rejected, Quotes Rejected, Price Books Rejected, Vendors Rejected, Solutions Rejected, Cases Rejected, Campaigns Rejected, Products Rejected, Deals Rejected, Accounts Rejected, Contacts Rejected, Leads Rejected, Purchase Orders Approved, Invoices Approved, Sales Orders Approved, Quotes Approved, Price Books Approved, Vendors Approved, Solutions Approved, Cases Approved, Campaigns Approved, Products Approved, Deals Approved, Accounts Approved, Contacts Approved, Leads Approved, Purchase Order Updated, Purchase Order Created, Invoices Updated, Invoices Created, Notes Updated, Notes Created, Sales Order Updated, Sales Order Created, Quotes Updated, Quotes Created, Price Books Updated, Price Books Created, Vendors Updated, Vendors Created, Solutions Updated, Solutions Created, Cases Updated, Cases Created, Campaigns Updated, Campaigns Created, Products Updated, Products Created, Deals Updated, Deals Created, Accounts Created, Contacts Updated, Contacts Created, Accounts Updated, Leads Updated, Leads Created</td> </tr> </tbody> </table> {{%note%}}{{%bold%}}Note:{{%/bold%}} Besides the events occurring in the standard modules of Zoho CRM mentioned above, you can also configure events occurring in {{%bold%}}any of the custom modules{{%/bold%}} that you create in your CRM. You can learn about creating and working with custom Zoho CRM modules from {{%link href="https://help.zoho.com/portal/en/kb/crm/customize-crm-account/customizing-modules/articles/customize-modules" %}}this help page{{%/link%}}.{{%/note%}} <br> **Important points to remember:** * You must have an account in Zoho CRM to be able to associate event occurrences from those services. * You can have any tier or edition of account in these services, such as the Standard, Professional, or even the free tiers. * You can manage all integrations with other Zoho services from the {{%link href="/en/getting-started/set-up-a-catalyst-project/integrations-settings/#introduction" %}}Integrations settings{{%/link%}}. When you add an account from a supported Zoho service to be associated with a Zoho event listener from the Event Listeners component, an integration with that specific account will be created and shown in *Integrations* settings. * A single Zoho event listener bus need not be associated with a specific service. You can create a Zoho event listener and configure multiple rules in it, and they can each be associated with different events occurring in any supported Zoho service. * A single rule in a Zoho event listener can only be associated with a particular event occurrence in a Zoho service. For example, you can associate a rule with a Purchase Order Updated event and another rule with a Leads Created event from Zoho CRM in the same event listener. * You will not be able to create a rule for the same service, account, event, and advanced filters for which another rule was already created previously. That is, Catalyst does not allow you to create duplicate rules for the same configuration. However, you can create a rule for an event that is already configured by adding different [advanced filters](#create-a-rule-in-a-zoho-event-listener). <br /> Let's understand the functioning of a Zoho event listener better with an example: Assume you associate a Zoho event listener rule for an Invoices Created event in a particular org in your Zoho CRM account. You configure *Function1* and *Function2* as the target functions for this rule. Now, each time an invoice is created in your CRM org that was associated, Catalyst will capture the event and will trigger the associated rule configured in the Zoho event listener. The rule in turn will invoke the execution of the target functions *Function1* and *Function2*. {{%note%}}{{%bold%}}Note:{{%/bold%}} You will also be able to add advanced filters for each event to define specific conditions on whose occurrence the rule must be executed if the event occurs. The filters vary for each event in each Zoho service.{{%/note%}} Similar to the other event listener types, the event data from the occurred event is passed to the target functions or circuits in a predefined JSON format. This data is then processed in the target function or circuit to carry out the required action. The data varies based on the Zoho service and the event occurring in it. For example, if a rule is associated with a Vendors Approved event from Zoho CRM, this will be a sample event data for it: {{%code class="language-json line-numbers" scroll="set-scroll" %}} { "project_details": { "id": 57*************, "project_name": "Eventbus" }, "event_bus_details": { "name": "ThirdPartyBus", "id": 57************* }, "data": { "subscriber": { "org_id": "15709179", "name": "ZohoCRM", "id": "111118000000000995" }, "data": [ { "Created_Time": "2022-09-22T07:25:15+00:00", "Last_Activity_Time": null, "Secondary_Email": null, "Owner": { "name": "Owner Name", "id": "25490*****" }, "Modified_Time": "2022-09-22T07:25:15+00:00", "Designation": null, "Company": "leadcompany", "Name": "leadLastname", "City": null, "Modified_By": { "name": "UserName", "id": "25490*****" }, "Last_Enriched_Time": null, "Description": null, "id": "2549000000109002", "Modified_Time": "2022-09-22T07:25:16+00:00", "Fax": null, "Created_Time": "2022-09-22T07:25:16+00:00", "Full_Name": "MyLead", "Created_By": { "name": "UserName", "id": "25490****" }, "id": "1728819000000440052", "Last_Name": "leadLastname", "Email": null } ], "publisher": { "org_id": "15709004", "name": "ZohoCRM", "id": "111118000000002003" }, "signal_info": { "subscription_id": "111118000000047572", "publisher_module_api_name": "Contacts", "generic_api_name": "Crm_New_Contacts", "api_name": "Crm_New_Contacts", "org_id": "15709005", "id": "111118000000003114", "module_name": "ZSignalsCustom3", "additional_params": null } }, "current_project": { "id": 57*************, "project_name": "Eventbus" }, "action": "ZohoEvents Produce", "source_entity_id": 570000000003015, "source": "ZohoEvents", "event_time": 1568192053790 }{{%/code%}} The event data that is passed includes data about the CRM org, the vendor approved, metadata about the CRM user that approved the vendor, Vendor module details, project details and more. Let's now work with Zoho event listeners from the Catalyst console. <br /> ### Create a Zoho Event Listener You can create a Zoho event listener in the following way: 1. Click {{%bold%}}Create Event Listener{{%/bold%}} from the Event Listeners section in _Amplify_, in the Catalyst console.<br /> <br /> 2. Enter a name and description for the event listener. Select {{%bold%}}Zoho Events{{%/bold%}} as the type.<br /> <br /> 3. Click {{%bold%}}Create{{%/bold%}}. The Zoho event listener will be created and displayed in the Event Listeners page with its ID and the same {{%link href="/en/cloud-scale/help/event-listeners/component-event-listeners/"%}}performance statistics{{%/link%}} as the component event listener. <br /> You can view the details of an event listener and create rules in it by clicking on **View** on its tile. <br> ### Create a Rule in a Zoho Event Listener You can create a rule in a Zoho event listener in the following way: 1. Click {{%bold%}}Create Rule{{%/bold%}} from the Zoho event listener's page.<br /> <br /> 2. Select a supported Zoho service to create the event listener for, from the pop-up window. Click {{%bold%}}Next{{%/bold%}}.<br /> <br /> 3. You must select an account in the service to associate the rule with. The accounts that you have already integrated with previously in Event Listeners or through {{%link href="/en/getting-started/set-up-a-catalyst-project/integrations-settings/" %}}Integrations settings{{%/link%}} will be listed here. You can select an account that is already listed for the service. <br /> <br /> You can also integrate a new account in the service by clicking {{%bold%}}Add new account{{%/bold%}} in the bottom. This will redirect you to a permissions page where you can add an account already created in the service. Click {{%bold%}}Accept{{%/bold%}} to provide the request permissions to Catalyst.<br /> <br /> You can switch to the rule creation pop-up in the Catalyst console and choose the newly integrated account. Click {{%bold%}}Next{{%/bold%}}.<br /> <br /> {{%note%}}{{%bold%}}Note:{{%/bold%}} If you add an integration with a new account in a service, Catalyst will take 2-4 minutes to sync with the service for the account. You can minimize this sync and it will be shown in the bottom of the console. After the sync is done, the minimized tool will ask you to continue with the rule configuration. You can resume the configuration from where you left it off.{{%/note%}} 4. You can now configure the rule details. Enter a name and description for the rule. <br /> <br /> 5. Select an event in the associated service to configure the rule with. You can select only one event for a rule. Refer to the [previous section](#introduction) for a list of available events in each service.<br /> <br /> 6. You can also optionally add advanced filters for the rule execute on by clicking the {{%bold%}}\\+{{%/bold%}} icon in _Advanced Filters_. These filters will vary based on the service and the event you selected. For example, for a _Purchase Orders Created_ event, you can specify certain parameters such as the _Shipping Country_ to be India or the _Shipping Code_ to not be empty, as shown in the image below. The rule will then only execute for that event if the _Shipping Country_ of the purchase order is India and if the _Shipping Code_ is not empty. {{%note%}}{{%bold%}}Note:{{%/bold%}} You can add a maximum of 25 advanced filters in a rule. If you configure multiple filters, they will all be processed through AND logic by default.{{%/note%}} <br /> <br /> Select one or more target functions or circuits to execute upon the rule execution. {{%note%}}{{%bold%}}Note:{{%/bold%}} * If you choose an event function as your target, the drop-down will only list {{%link href="/en/serverless/help/functions/event-functions/" %}}event functions{{%/link%}}. * If you choose a circuit as your target, the drop-down will list all the circuits you had previously created. * If you have not created an event function or a circuit prior to configuring your event listener, click **Create New** in the drop-down and you will be directed to the respective component section to create your {{%link href="/en/serverless/help/functions/event-functions/#introduction" %}}event function{{%/link%}} or {{%link href="/en/serverless/help/circuits/implementation/#create-a-circuit" %}}circuit{{%/link%}}.{{%/note%}} 7. Click {{%bold%}}Create{{%/bold%}}. The rule will be created in the Zoho event listener. It will be listed in the event listener's page with its details. The source of the rule will display the service it is associated with.<br /> <br /> You can click on a rule's name to view its details and data pattern.<br /> <br /> {{%note%}}{{%bold%}}Note:{{%/bold%}} You can configure {{%link href="/en/devops/help/application-alerts/introduction/"%}}Application Alerts{{%/link%}} for your Zoho event rules, in the same manner you configured alerts in the {{%link href="/en/cloud-scale/help/event-listeners/component-event-listeners/#configure-alerts-for-catalyst-component-listeners"%}}Catalyst Component Events section{{%/link%}}.{{%/note%}} <br /> <br /> ### Configuring accounts for the Production Environment Catalyst requires you to configure accounts for the {{%link href="/en/deployment-and-billing/environments/introduction/"%}}production environment{{%/link%}} in the supported Zoho services for all existing Zoho event listener rules before or when you deploy your project to production. You will not be able to configure or edit rules directly in the production environment from the _Event Listeners_ component to associate them with production accounts. However, this can be achieved through the pop-up that is displayed in either of these cases: * If you are {{%link href="/en/deployment-and-billing/environments/initial-deployment/"%}}deploying your project to production for the first time{{%/link%}}, Catalyst will automatically display the pop-up when you click on the environment drop-down in the top-right corner of the console to switch to the production environment. * If you are {{%link href="/en/deployment-and-billing/environments/subsequent-deployment/"%}}deploying your project to production subsequently{{%/link%}} after the first time, this pop-up will be displayed after the _Diff Generation_ step for any rules that have not been associated with a production account yet. These will also include rules that were created after the previous deployment to production. The pop-up will require you to perform the following steps: 1. Choose an account in the associated service for each existing rule in a Zoho event listener by clicking the text box.<br><br /> 2. Choose a synced account from the list or add a new account. The accounts that are listed will include the accounts that were added in the {{%link href="/en/getting-started/set-up-a-catalyst-project/integrations-settings/#add-an-integration-in-the-production-environment" %}}_Production_ section of the _Integration_ settings{{%/link%}} for that service.<br><br /> You can also add a new account by clicking {{%bold%}}Add new account{{%/bold%}} at the bottom. The process is the same as explained in the [previous section](#create-a-rule-in-a-zoho-event-listener). {{%note%}}{{%bold%}}Note:{{%/bold%}} After you add a new account from here and org sync is completed, you can click {{%bold%}}Refresh{{%/bold%}} in this pop-up for the sync to reflect. The newly synced account will then be present in the list.{{%/note%}} 3. After configuring accounts for all existing Zoho event listener rules in this pop-up, click {{%bold%}}Confirm{{%/bold%}}.<br><br /> Depending on if you were deploying your project for the first time or at a subsequent time, the next steps in the process will continue accordingly. {{%note%}}{{%bold%}}Note:{{%/bold%}} This pop-up will also be displayed when deploying your project from the production environment to the development environment, in the case of any un-configured rules in the target environment.{{%/note%}} <br /> ### Edit a Rule in a Zoho Event Listener You can edit a rule in a Zoho event listener, and modify its name, description, advanced filters, or target point and their associated event functions or circuits. {{%note%}}{{%bold%}}Note:{{%/bold%}} You will not be able to change the Zoho service, account, or the event the rule is associated with.{{%/note%}} To edit a rule in a Zoho event listener: 1. Click the ellipsis icon for the rule from the event listener's page, then click {{%bold%}}Edit{{%/bold%}}.<br /> <br /> 2. Make the required changes, then click {{%bold%}}Update{{%/bold%}}. <br /> <br /> <br /> ### Disable a Rule in a Zoho Event Listener You can disable a rule in a Zoho event listener if you need to deactivate it temporarily. This will stop the event listener from listening to the event that the rule is associated with, and the associated functions or circuits will not be invoked when the event occurs. To disable a rule in a Zoho event listener: 1. Click the ellipsis icon for the rule from the event listener's page, then click {{%bold%}}Disable{{%/bold%}}.<br /> <br /> 2. Click {{%bold%}}Yes, Proceed{{%/bold%}} in the confirmation pop-up. <br /> <br /> The rule will be disabled. You can enable it again by clicking the ellipsis icon and clicking **Enable**. <br /> ### Delete a Rule in a Zoho Event Listener To delete a rule in a Zoho event listener: 1. Click the ellipsis icon for the rule from the event listener's page, then click {{%bold%}}Delete{{%/bold%}}. <br /> <br /> 2. Click {{%bold%}}Yes, Proceed{{%/bold%}} in the confirmation pop-up window. <br /> <br /> <br /> ### Edit a Zoho Event Listener You can rename a Zoho event listener or edit its description in the following way: 1. Click the ellipsis menu on the top of the page of the Zoho event listener, then click {{%bold%}}Edit{{%/bold%}}. <br /> <br /> 2. Update the details of the event listener, then click {{%bold%}}Save{{%/bold%}}. <br /> <br /> <br /> ### Delete a Zoho Event Listener To delete a Zoho event listener permanently: 1. Click the ellipsis menu on the top of the page of the Zoho event listener, then click {{%bold%}}Delete{{%/bold%}}.<br /> <br /> 2. Click {{%bold%}}Yes, Proceed{{%/bold%}} in the confirmation pop-up. <br /> <br /> -------------------------------------------------------------------------------- title: "Queued Events" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the components or in a custom source respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.537Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/queued-events/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Queued Events {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} As described in the {{%link href="/en/cloud-scale/help/event-listeners/terminology/" %}}Terminology{{%/link%}} section, when an event for which an event listener rule has been configured has occurred, the event will be queued for processing. The event will be added to a queue particular to that event listener. This can be an event in a component that an event listener has been configured to listen to, or the invocation of a custom event listener's URL. The process can be described as follows 1. Event listener listens for a component or a custom event 2. Event Occurs 3. Event is pushed to queued events 4. Event listener's rule is triggered 5. The rule invokes the associated event functions or circuits and passes the event data for execution 6. Event function or target circuit executes 7. Function or circuit execution is a success or a failure 8. Event is removed from the queue, and is categorized as a processed or failed event ### Queued Events in Component Event Listeners You can view the events that are currently in the queue at any point of time, from the **Queued Events** section in the *Event Listeners* page. The event listener's tile will also display the number of events that are in the queue currently, in its statistics. <br /> The queued events section displays various details of the events such as their time of initiation, source, action, and the data in JSON format that will be passed to the associated event functions or circuits by the rules respectively. You can view the formatted data by clicking the **Format JSON** button. <br /> You can filter the queued events displayed on this page based on specific components using the first drop-down list. You can also use the search bar to search for events based on event time, rule name, action or even component name. For more precise search results, you can search using keywords from the event data. <br /> You can further narrow the list of queued events by filtering based on the specific actions pertaining to each component. <br /> You can also filter the events based on their time of initiation, such as from the last 15 minutes or 30 minutes from the time-based drop-down list. <br /> ### Queued Events in Custom Event Listeners Similar to the queued events in the component event listener, you can view the events queued for processing in a custom event listener by clicking **Queued Events** from a custom event listener's page. The page will display details like the date the custom event listener was created on, the description and by whom it was created. Additionally, you will be able to view and copy the Produce URL of the custom event. <br /> The queued events section also displays other details of the events such as their, source, action, and the event data in the JSON format that will be passed to the associated event functions or circuits by the rules respectively. You can view the formatted data by clicking the **Format JSON** button. <br /> As in *Component Event Listeners*, you can filter and search the queue for events. You can click **Refresh** to view an updated list, if there are any lags in displaying the events. After these events are processed, they will be removed from the queue. ### Pause Events in Queue Catalyst enables you to pause any event in the queue for a maximum period of **five minutes** in one go. Pausing a queue allows you to stop its processing temporarily and perform code fixes in case any errors occur. You can then either manually resume a paused queue or wait for the queue to be resumed automatically when the five-minute timer runs out. <br /> 1. You can pause the queue by clicking the **Pause Queue** button in the right-hand corner. <br /> 2. Click **Yes, Proceed** <br /> You can search and filter results in the queue even while it is paused. The time remaining for the queue to automatically resume will be displayed on top of the *Queued Events* page. <br /> ### Remove Events from Queue While the queue is paused, you can delete events from the queue. This will remove them permanently from the queue and terminate their processing. If an associated event function or circuit has been triggered, it will also be terminated immediately. To remove one or more events from the queue: 1. Select an event or multiple events when the queue is paused using the check box, then click **Remove Event**. <br /> You can also select all events and delete them in bulk. Click **Remove All**. <br /> 2. Click **Yes, Proceed** to confirm. <br /> ### Resume Queue To manually resume a paused queue: 1. Click **Resume Queue**. <br /> 2. Click **Yes, Proceed** to confirm. <br /> {{%note%}}{{%bold%}}Note:{{%/bold%}} After a queue has been resumed, it can only be paused again after 15 minutes.{{%/note%}} ### Kill Events in Queue A particular event in a queue that is currently being processed will be displayed in the **In Progress** section of the event listener's index page. This section will display the event's details such as the rule name, Execution ID, date and time of processing, and the event data in the JSON format. When you kill an event from the **In Progress** section it will be terminated abruptly and will be removed from the queue. The executions of its associated functions or circuits will also be terminated immediately. <br /> To kill an event in progress: 1. Click the kill icon from the right-hand corner of the **In Progress** section. <br /> 2. Click **Yes, Proceed** to confirm. <br /> ### Disable the Queue of an Event Listener When an Event Listener is created, Catalyst automatically creates and enables a queue for the processing the events associated with that event listener. You can disable this queue when you don't want any events in that queue to be processed. You can always enable the queue again when you require. 1. Click the ellipsis icon in the top right-hand corner of the component event listener or a custom event listener's page, and click **Disable Queue**. <br /> 2. Click **Yes, Proceed** to confirm. <br /> The disabled status of the queue will be displayed near the event listener's name. The **Queued Events** button will also be disabled. <br /> The disabled status of the queue will also be displayed on the Event Listeners page. <br /> You can enable a disabled queue by clicking the same ellipsis icon and clicking **Enable**. <br /> The enabled queue will now capture and process events. <br /> The enabled queue will now capture and process events. <br /> -------------------------------------------------------------------------------- title: "Processed Events" description: "Catalyst provides component, custom, and Zoho event listeners that listen for specific event occurences in the components or in a custom source respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.537Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/processed-events/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Processed Events {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} After an event listener's rule has executed and the event is processed successfully, i.e., the associated target functions or circuits have executed successfully, you can view the detailed execution history from the Processed Events section of the rule. The event listener's statistics will also display the processed event count. {{%note%}}{{%bold%}}Note:{{%/bold%}} Both component and custom event listener rules contain similar Processed Events sections.{{%/note%}} You can access the processed events of any component or custom event listener rule in the following way: 1. Open the event listener from the *Event Listeners* page. 2. Open the specific rule from the list of rules of the event listener. 3. Click the **Processed Events** tab next to the *General Details* tab. <br /> This section contains an event traffic graph of the day that displays the number of requests processed successfully in the last 24 hours. You can also select a specific time period from the drop-down filter, to view the graph of that time period alone. <br /> The execution history displays several details of each execution including a unique **Execution ID** that refers to that execution, the start time, execution time, and the status of the execution. You can also use the status filter to view executions of a particular status, such as the successful or timed out executions. <br /> The *Code Exception* status displays events whose associated target functions or circuits that faced an exception in their code, and the *Unintentional Termination* status indicates all cases where the target point execution was terminated due to some errors. You can also use the time filter to view the events executed in a particular time period, such as the last 1 hour or last 12 hours. Catalyst retains the execution history of event listener rules for **3 months** in the Production environment and **1 month** in the Development environment. Refer to the {{%link href="/en/deployment-and-billing/environments/introduction/" %}}Environments help page{{%/link%}} to learn about them. This section also contains a link to view the logs and APM of the target point executions associated with each rule. Click on the **View Logs** icon of any rule. <br /> You will be navigated to the {{%link href="/en/devops/help/logs/introduction/" %}}Catalyst Logs{{%/link%}} component that shows detailed information of the event function or circuit executions that were processed by that rule. <br /> If you click on View APM, you will be navigated to the {{%link href="/en/devops/help/apm/introduction/" %}}Application Performance Monitoring{{%/link%}} component, that contains detailed statistics about the target point calls, error occurrences, component usage, and more. {{%note%}}{{%bold%}}Note:{{%/bold%}} You must have enabled APM for your project to view the APM link in the execution history.{{%/note%}} <br /> -------------------------------------------------------------------------------- title: "Working with Rules" description: "Catalyst provides component and custom event listeners that listen for specific event occurences in the components or in a custom source respectively, and allow you to execute your own logic upon the event occurence." last_updated: "2026-03-18T07:41:08.538Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/event-listeners/working-with-rules/" service: "Cloud Scale" -------------------------------------------------------------------------------- # Working with Rules ### Edit a Rule {{%note%}}{{%bold%}}Note:{{%/bold%}} Catalyst now offers you a brand new event bus service called {{%bold%}}Signals{{%/bold%}}. This service is a significant upgrade to the current {{%italics%}}Cloud Scale Event Listeners{{%/italics%}} component. You can find out more about the Catalyst Signals service {{%link href="/en/signals/" %}}here{{%/link%}}.<br />{{%/note%}} You can edit a rule in the component, custom, or a Zoho event listener, and modify its details, source, or target points and their associated functions or circuits in the following way: 1. Open the component, custom, or a Zoho event listener from the _Event Listeners_ page. 2. Click the ellipsis icon for the rule, then click {{%bold%}}Edit{{%/bold%}}.<br /> <br /> 3. Make the required changes, then click {{%bold%}}Update{{%/bold%}}.<br /> <br /> <br /> ### Disable a Rule You can disable a rule in the component, custom, or a Zoho event listener if you need to deactivate it temporarily. This will stop the event listener from listening to the event that the rule is associated with, and the associated functions or circuits will not be invoked when the event occurs. To disable a rule in the component or a custom event listener: 1. Open the component, custom, or a Zoho event listener from the _Event Listeners_ page. 2. Click the ellipsis icon for the rule, then click {{%bold%}}Disable{{%/bold%}}.<br /> <br /> 3. Click {{%bold%}}Yes, Proceed{{%/bold%}} in the confirmation pop-up.<br /> <br /> The rule will be disabled. You can enable it again by clicking the ellipsis icon and clicking {{%bold%}}Enable{{%/bold%}}. <br /> ### Delete a Rule To delete a rule in the component, custom, or a Zoho event listener: 1. Open the component, custom, or a Zoho event listener from the _Event Listeners_ page. 2. Click the ellipsis icon for the rule, then click {{%bold%}}Delete{{%/bold%}}.<br /> <br /> 3. Click {{%bold%}}Yes, Proceed{{%/bold%}} in the confirmation pop-up.<br /> <br />