Kaizen #128 - Circuits in Zoho CRM - Part 3

Kaizen #128 - Circuits in Zoho CRM - Part 3

Hello everyone!
We are back with yet another post on Circuits in Zoho CRM.

In our last week's post, we discussed a use case, the various states and functions involved in that circuit, testing and execution, and associating that circuit with a workflow.

In today's post, we will see how we can associate that circuit with a button and a blueprint, the output format of the "Zoho CRM" functional states, and a few FAQs.

Use case recap

Consider that we have a module in CRM called Customers, where we have personal info of customers, tax-related details, tax and personal ID verification details and status. Our aim is to check the loan amount, check eligibility, and then grant or reject it.
Our condition is that whenever the loan amount is less than Rs. 500,000, the circuit should directly proceed to document verification. When the requested loan amount is greater than Rs. 500,000, we must check a few eligibility criteria before proceeding to document verification.

This is the circuit for the above use case.


Let us see how this circuit works with a button.

Associating the Circuit with a Button

Follow the steps in this article to create a button in the Customers module.
Choose "Execute Circuit" from the list of Custom Actions for the button.
From the list of Circuits, choose the Verification Process circuit.


Here is the execution of the circuit when you execute the button action.


Associating the Circuit with a Blueprint

Create a blueprint by following the steps in this article.
Our blueprint would look like this.

Specify the entry criteria as Amount > 500000.
When the amount > 500000, and tax is filed, the "After" transition would be executing the circuit as shown in the image.

When the tax is not filed, the "After" transition will still be executing the circuit.




Execution Logs

Go to Setup > Developer Hub > Circuits.
Click the Execution Logs tab. You can see the list of circuits that were executed with their duration, start and end times, the place where they were triggered from, and the status.


When you click any of the entries, you can see the execution of the circuit.

If a circuit's execution failed, the status would be Failed.
When you hover over the entry, you can see Retry and Rerun options.

Retry executes the circuit from the state where it failed, while Rerun executes the circuit from the beginning.

Output format of the "Zoho CRM" Functional States

After the input is processed by the state, the output will be available as a JSON. Result Path selects(using JSON Path format) what combination of the state result and the actual state input has to be passed to the output, from that JSON.
Each JSON of the Zoho CRM state will have two objects viz., ZohoCRM and the variable you have specified in the Result Path for that state(depicted in the following image).

Here is the JSON.
{
"ZohoCRM": {
"record_id": "{recordid}",
"user_id": "{userid}",
"module": {
"api_name": "{moduleapiname}",
"tab_label": "{modulelabel}",
"id": "{moduleid}"
}
    },
  "{name}": {} //contains state result
}

The various Zoho CRM states and their sample JSON formats in the response are discussed in this section. 
  1. The Get User state returns the Get user API response.
  2. The Get Variables state returns the CRM variables in your org.
  3. The Get Org state returns the org details.
  4. The Get Record state returns the record's details.

1. Get User

{
 "ZohoCRM": {
  "record_id": "5575270000005762031",
  "user_id": "5575270000005379053",
  "module": {
   "api_name": "Customers",
   "tab_label": "Customers",
   "id": "5575270000001975002"
  }
 },
 "get_user": {//This is the name specified for the Result Path
  "users": [
   {.. Get a user API response.. }
]
}
}

2. Get Variables

{
 "ZohoCRM": {
  "record_id": "5575270000005762031",
  "user_id": "5575270000005379053",
  "module": {
   "api_name": "Customers",
   "tab_label": "Customers",
   "id": "5575270000001975002"
  }
 },
 "get_var": {//This is the name specified for the Result Path
  "variables": [
   {.. Get Variables API response.. }
]
}
}

3. Get Org

{
 "ZohoCRM": {
  "record_id": "5575270000005762031",
  "user_id": "5575270000005379053",
  "module": {
   "api_name": "Customers",
   "tab_label": "Customers",
   "id": "5575270000001975002"
  }
 },
 "get_org": {//This is the name specified for the Result Path
  "org": [
   {.. Get Organization API response.. }
]
}
}

4. Get Record

{
 "ZohoCRM": {
  "record_id": "5575270000005762031",
  "user_id": "5575270000005379053",
  "module": {
   "api_name": "Customers",
   "tab_label": "Customers",
   "id": "5575270000001975002"
  }
 },
 "record": {//This is the name specified for the Result Path
  "data": [
   {.. Get records API response.. }
]
}
}


The following table gives you an idea of how the response for the Get record state is depending on where the circuit is triggered from.

Trigger
Applicable?
Output
Workflow
Yes
data[0] (Respective record)
Blueprint
Yes
data[0]
Button - Details Page
Yes
data[0]
Button - Edit Page
Yes, but the current edited value won't be considered
data[0]
Button - Each Record
Yes
data[0]
Button - Mass Action
Yes, the Execution preview will be redirected to the Circuit's Execution tab
data[0]
Button - Related List Selection*
The related module's record, not the base module's record
data[0]
Button - Create Page
No
{}
Button - Clone Page
No
{}
Button - Utility Menu
No
The circuit fails because `record_ids` will be passed as an array instead of `record_id`

FAQs

1. Is it possible to trigger a Circuit via a REST API?
It is not possible to trigger/execute a Circuit via REST API as of now. We have plans to support that in the future.

2. How to pass record details/Is it possible to send parameter values to a Circuit while starting the execution?
You can simply use the "Get Record" state to get the details of a record, and the response will be the same as that of the Get Records API.

3. What API version is 'Get Record' using?
Version 2 of CRM APIs.

4. Is it possible to return JSON as a response from the Function state?
Yes. To send a custom JSON response, you should use `crmAPIRequest` as the key and the value as the API response in Functions.
Example:

// This is the actual content you will get in the Circuit.
output = {"name":"Zylker","zipcode":600001};
// This is to construct the crmAPIResponse
response = Map();
response.put("status_code",200);
response.put("body",{"code":"success","details":{"output":output,"output_type":"string","id":"896753000000146001"},"message":"function executed successfully"});
return {"crmAPIResponse": response};

5. Is it possible to pause the circuit and continue to the next state on demand/on trigger from a remote server (via REST API)?
It's not possible to pause the state and trigger the next state from a remote server. As a workaround, you can use the "wait" state (up to 30 days i.e 25,92,000 seconds) is and fetch the status periodically to move to the next state upon the desired response received.

6. Is it possible to retry Circuit execution from the failed state?
Yes, one can retry the Circuit execution from the last failed state or can rerun the entire execution from the beginning. These options are available for every Failed execution under the Execution Logs.

7. How are credits calculated for a Circuit?
Circuits use an edition-based credit system, where each transition in the circuit consumes one credit. While every edition has a maximum credit limit, you can always purchase add-on credits from the Credits tab on the Circuits dashboard. Refer to this help page for details.

We hope you found this post useful. Let us know your comments in the Comment section.

Cheers!
Shylaja

Additional Reading:


    Access your files securely from anywhere







                            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 #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
                                                            • Kaizen #152 - Client Script Support for the new Canvas Record Forms

                                                              Hello everyone! Have you ever wanted to trigger actions on click of a canvas button, icon, or text mandatory forms in Create/Edit and Clone Pages? Have you ever wanted to control how elements behave on the new Canvas Record Forms? This can be achieved
                                                            • Kaizen #142: How to Navigate to Another Page in Zoho CRM using Client Script

                                                              Hello everyone! Welcome back to another exciting Kaizen post. In this post, let us see how you can you navigate to different Pages using Client Script. In this Kaizen post, Need to Navigate to different Pages Client Script ZDKs related to navigation A.
                                                            • Kaizen #210 - Answering your Questions | Event Management System using ZDK CLI

                                                              Hello Everyone, Welcome back to yet another post in the Kaizen Series! As you already may know, for the Kaizen #200 milestone, we asked for your feedback and many of you suggested topics for us to discuss. We have been writing on these topics over the


                                                            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


                                                                                                      ご検討中の方




                                                                                                              • Recent Topics

                                                                                                              • Contact data removes Account data when creating a quote

                                                                                                                Hi, Our customer has address fields in their quote layout which should be the address of the Account. They prefill the information, adding the account name - the address data is populated as per what is in the account - great. However when they then add
                                                                                                              • Gain control over record sharing with portal users through our new enhancement: criteria-based data exposure

                                                                                                                Dear Customers, We hope you're well! Portals is a self-service avenue through which your clients can access and manage their direct and related data in Zoho CRM. This empowers them to be more independent and enables them to experience a sense of transparency
                                                                                                              • Converting Sales Order to Purchase Order

                                                                                                                Hi All, Firstly, this code works to convert a sales order(SO) to a purchase order (PO) via a button, however I am running into an issue when I convert the SO where the values from the line items are not pulled across from the SO to the PO. The ones in
                                                                                                              • Best-practice setup in Zoho One for managing combined candidate pools and exporting anonymised CVs

                                                                                                                We are new users of the Zoho One bundle and operate a consulting and engineering company. Our workforce model includes a mix of permanent employees, active job applicants, and freelance/independent consultants. All three groups need to be searchable,
                                                                                                              • Meet Canvas' Grid component: Your easiest way to build responsive record templates

                                                                                                                Visual design can be exciting—until you're knee-deep in the details. Whether it's aligning text boxes to prevent overlaps, fixing negative space, or simply making sure the right data stands out, just ironing out inconsistencies takes a lot of moving parts.
                                                                                                              • hard-bounced email list

                                                                                                                Hi, Below pops up when I try to send an Email to some of my customer. Please guide me how to take it out from hard-bounced list? I am not sure how they were marked in hard-bounced list
                                                                                                              • Register the 'Contact Role' addition and change as a Potential edition so it can trigger Workflows

                                                                                                                We are trying to use "Contact Roles" in Potentials. Contact Roles are special and different than the other Related lists, so, it may have a special behavior. Something to keep in mind is that you will never have 100 Contact Roles as you can have 100 Tasks, Calls, or any other Related list. In our case we will have 2 in average and up to 4 or 5 maximum. The problem is that we need to bring information from 3 key Contact Roles to the Potential and adding a Contact to the Contacts Roles area never trigger
                                                                                                              • Can I change the format of the buttons in the email templates?

                                                                                                                Hi all! We have been working hard trying to brand our email templates, and have some way to go yet. One of the things we can't seem to edit is the green ${Cases.CUSTOMER_PORTAL_BUTTON} button and the font of the View Ticket text. Is there any way of doing
                                                                                                              • Best practice to structure reporting to include events covering multiple months / quarters.

                                                                                                                Hi, I'm new to Zoho, have some experience of more "enterprise" tools, looking for some input from the community. I'm looking to create a report that includes events that cover a long period, each event has a start / end date and I'm struggling undertanding
                                                                                                              • All new Address Field in Zoho CRM: maintain structured and accurate address inputs

                                                                                                                The address field will be available exclusively for IN DC users. We'll keep you updated on the DC-specific rollout soon. It's currently available for all new sign-ups and for existing Zoho CRM orgs which are in the Professional edition. Latest update
                                                                                                              • Marketing Tip #11: Turn features into benefits that sell

                                                                                                                We all love talking about our products, but here’s a secret: customers don’t just buy features, they buy benefits. Instead of just saying "Made from 100% organic cotton," try "Soft, breathable comfort that lasts all day." Benefits tell shoppers how your
                                                                                                              • Zoho Sheet - Printing - Page Breaks and Printing Customization

                                                                                                                I think the title is descriptive enough in that I cannot find help documentation on a simple task of adding in page brakes for separating pages on print. Thanks
                                                                                                              • Synchronise item image between Zoho Commerce and Zoho Books/Inventory/CRM

                                                                                                                Here is a blindingly simple idea to tie several Zoho products together. Zoho - please include a method to synchronise the item image (or images) from one Zoho application to another. For example, if you upload an item image in Zoho Inventory, a user should
                                                                                                              • How do I migrate from zoho mail to Office 365?

                                                                                                                The manual migration of Zoho Mail to Microsoft 365 typically requires using IMAP to move emails and configuring Microsoft Outlook to sync Zoho Mail. This approach can be error-prone, especially if there are multiple accounts or large email archives. Moreover,
                                                                                                              • Horrible Connectivity!

                                                                                                                I have used Meetings several times, but most of the time the connection is horrible. The video freezes, the audio freezes, and we end up cancelling the meeting. I am on a high speed internet connection, and Zoom works fine, so I know it's not a problem
                                                                                                              • Exciting Updates to the Kiosk Studio Feature in Zoho CRM!

                                                                                                                Hello Everyone, We are here again with a series of new enhancements to Kiosk Studio, designed to elevate your experience and bring even greater efficiency to your business processes. These updates build upon our ongoing commitment to making Kiosk a powerful
                                                                                                              • New Update: Convert External Users in Bulk in Zoho Directory

                                                                                                                Greetings to all Zoho Directory users out there! We’re excited to introduce a new update that makes user management in Zoho Directory even more efficient; you can now convert external users in bulk! Earlier, admins could convert only one external user
                                                                                                              • New Update: Convert External Users in Bulk in Zoho One

                                                                                                                Greetings to all Zoho One users out there! We’re excited to introduce a new update that makes user management in Zoho One even more efficient; you can now convert external users in bulk! Earlier, admins could convert only one external user at a time.
                                                                                                              • How to edit form layout for extension

                                                                                                                I am working on extension development. I have created all the fields. I want to rearrange the layout in Sigma platform. But there is no layout module in Sigma. How can I achieve this for extensions other than Zet CLI and putting the fields into widget
                                                                                                              • Website not properly connecting with Zoho Creator app portal (embed & data sync issue)

                                                                                                                Hello Zoho Community, I’m currently facing an issue while trying to connect my external website with a Zoho Creator app portal. I have a tool-based website ( https://mygardencalculator.com/ ) where users interact with calculators and dynamic content.
                                                                                                              • 日本語フォントの選択肢拡充についての要望

                                                                                                                日本語フォントの選択肢がとても少ないと感じたことはありませんか? 多くのアプリ(たとえば Invoice)ではフォントが1種類しかなく、正直あまり使いやすい・見た目が良いとも言えません。 そろそろ、もっと多くの日本語フォントを追加してほしい、そしてすべてのアプリで同じフォント選択肢を使えるようにしてほしいと、私たちユーザーが声を上げる時期だと思います。 ご存じのとおり、現状ではアプリごとにフォント周りの仕様にほとんど一貫性がありません。 みなさん、一緒に要望を出していきましょう!
                                                                                                              • Does anyone know how to setup Zoho Desk or Zoho CRM as a custom outgoing/incoming Call Centre?

                                                                                                                I need to setup a call center so I can setup agents to make phone calls across Canada to market our services.  I am trying to figure out the most reliable and cost efficient way to do this? I am currently paying for two phone services and neither seem
                                                                                                              • Display actual mileage on an invoice

                                                                                                                My users are creating expenses in Zoho expense. For example, they expense 10 miles and get paid 7 dollars (10 miles * IRS rate of .70). If I look at the expenses in Zoho Books, it does show them at 10 miles at .70 cent When I add these expense to an invoice
                                                                                                              • Using Another Field Value for Workflow Field Update

                                                                                                                I'm trying to setup a Workflow with a "Field Update" action on the Lead module, but I would like the new value to actually be taken from a DIFFERENT Field's on the Lead record (vs just defining some static value..) Is this possible? Could I simply use
                                                                                                              • Prevent Unapproved Quotes from Exporting to Zoho CRM Finance Module

                                                                                                                Is it possible to prevent unapproved quotes in Zoho Books from being exported from Zoho Finance module inside Zoho CRM?
                                                                                                              • Zoho Flow + QuickBooks Estimates – Line items not created from CRM subform

                                                                                                                Hi everyone, I’m trying to create QuickBooks Estimates from Zoho CRM Quotes using Zoho Flow. I’m aware that Zoho Flow’s native “Create Estimate” action does not support multiple line items, so I followed the community guidance for Invoices using a custom
                                                                                                              • Integration with...

                                                                                                                Dear Zoho Commerce team, Please could you consider the integration within Zoho Commerce / Inventory and Qapla'? (https://www.qapla.it/en/) This app is better than Aftership in many ways: - Aftership integration require PRO plan and price start from more
                                                                                                              • Zoho Sign - Zoho CRM extension upgrade

                                                                                                                Hi everyone, We've updated Zoho Sign extension for Zoho CRM with significant internal changes. Impact on existing Zoho Sign extension users Users using the extension without customization If you are using the integration without implementing Zoho Sign's
                                                                                                              • Consultant-Only Booking Page

                                                                                                                Zoho Bookings does not allow for Meeting Type OR Workspace-Wide booking pages to be turned off. This is detrimental to organizations that have territory-based or assigned accounts, because if prospects can go to these booking pages and either select the
                                                                                                              • Start Workflow from Deluge Script

                                                                                                                I have developed a customized process from our CRM that leverages a deluge script to create a statement of work document. Once the document has been created via the merge and store function, I would like the ability to start a workdrive review & approve
                                                                                                              • Request for Auto PO - Min–Max based Automated Purchase Feature

                                                                                                                Dear Zoho POS Team, I’m writing to request a feature enhancement that would significantly streamline inventory management for businesses using Zoho POS — particularly supermarkets, FMCG retail, and multi-store operations like ours. Feature Requested:
                                                                                                              • Masters in UK – Experiences, Universities, and Career Outcomes

                                                                                                                This forum discussion is for students who are planning or considering a Masters in UK and want to gain practical insights beyond official university websites. The UK attracts international students due to its globally recognized universities, diverse
                                                                                                              • Export your notes from Notebook!

                                                                                                                Dear users, The long awaited feature is now live. Yes, you can now export your notes from Notebook app in bulk. But the feature has just started with web app alone for now. You can try the export feature as mentioned below: Go to our web app, https://notebook.zoho.com Go to 'Settings' > 'Export' Now, select the format: You can select either ZNote or HTML Once done, you can use the same to import or can have this a local backup of your notes. Note: Export for other platforms are in development and
                                                                                                              • Prepopulating Fields

                                                                                                                Hello, I have a form (Assets) with 2 lookup fields: Client (from Clients) Site (from Client Sites) I modified the code (highlighted in red below), so the Site dropdown shows the list of sites related to the Client. must have Client_Site ( type = picklist
                                                                                                              • Unable to sort as Descending order

                                                                                                                Trying to change the sort order for a lookup field (checkboxes) from Ascending to Descending and keep getting an error in Deluge that the order must be Ascending Did anyone ran into this? Thanks Eyal
                                                                                                              • Export Invoices to XML file

                                                                                                                Namaste! ZOHO suite of Apps is awesome and we as Partner, would like to use and implement the app´s from the Financial suite like ZOHO Invoice, but, in Portugal, we can only use certified Invoice Software and for this reason, we need to develop/customize on top of ZOHO Invoice to create an XML file with specific information and after this, go to the government and certified the software. As soon as we have for example, ZOHO CRM integrated with ZOHO Invoice up and running, our business opportunities
                                                                                                              • issue with deluge script

                                                                                                                i used chat gpt to build this script and I am getting 2 errors which I cannot figure out how to fix: void monthly_sales_order_generation() { try { // ---------------- CONFIG ------------------- analytics_url_1 = "https://analytics.zoho.com/api/<workspaceID>/report/<reportID1>/data";
                                                                                                              • Introducing LinkedIn Apply Connect for Zoho Recruit

                                                                                                                Attract up to 3x more qualified candidates and hire more efficiently with LinkedIn Apply Connect. Let candidates fill-in job applications without any redirections, gain deeper insights with applicant highlights within Zoho Recruit, and keep candidates
                                                                                                              • Recruit paid support?

                                                                                                                Hi all, Could anyone who has paid support package advise if it provides value for money with regards to support response times? Exploring the idea as unfortunately when we have faced issues with Recruit it has been a 7+ day timescale from reporting to
                                                                                                              • Introducing Dedicated Modules for Plans, Addons, and Coupons in Zoho Billing

                                                                                                                We’ve enhanced the way you manage Plans, Addons, and Coupons in Zoho Billing. Previously, all three grouped together under Subscription Items. Now, each one has its own dedicated module, giving you a cleaner and more intuitive experience. This update
                                                                                                              • Next Page