Kaizen #161: Global Sets using Zoho CRM APIs

Kaizen #161: Global Sets using Zoho CRM APIs

 Hello all!
In this week, we will see how to work on the Global Sets using our Zoho CRM APIs. Global Picklist APIs were introduced in Zoho CRM API version 6.

In this post, we will cover the following
  • Global Sets in Zoho CRM
  • Advantages of the Global Sets
  • Use case
  • Create a Global Set using the POST Global Picklist API
  • Use the Global Set with a Picklist Field in the Required Modules
  • Update the Global Set Values Using the PATCH Global Picklist Field API
  • Conclusion

Global Sets in Zoho CRM

Zoho CRM offers an efficient way to maintain a set of data that will be used commonly across the modules to maintain accuracy via the Global Sets or Global Picklists.
Global Sets or Global Picklists are collections of picklist values that can be associated with multiple picklists across modules. When you create Global Sets, you define a set of values that can be associated with fields in different CRM modules, ensuring uniformity in data input across your organization. Refer to this link to know more about Global Sets.

Advantages of Global Sets

  • Consistency: The same list of values is available across multiple modules, reducing errors and inconsistencies in data entry.
  • Time-saving: You do not have to update picklist values in each module manually. Once updated centrally, changes reflect across all associated fields in all modules.
  • Scalability: Easily expand your picklist when your business grows, adding new values (e.g., Adding new showroom location for franchises) without repetitive work.
  • Easy Management: Centralized management of picklist values means less administrative work.

Use case

Global Picklist for Showroom Locations at Zylker Electronic Franchise 
Zylker, an electronics business franchise, operates several showrooms across multiple cities, all managed in Zoho CRM. As the franchise expands, they need to add new showrooms to various modules such as Leads, Deals, and Services frequently.  Whenever a new showroom opens, they can update the Global Picklist, ensuring that all modules are updated instantly and preventing inconsistencies.
In these situations, different teams manually entering showroom locations in the picklist field can lead to mistakes like typos or different spellings of the same location.
By implementing a Global Picklist for "Showroom Location," Zylker ensures that all teams select from the same list of showroom locations.

Create a Global Set using the POST Global Picklist API

Create a Global Set with the desired values. 

Request URL:  {api-domain}/crm/{version}/settings/global_picklists
Request Method: POST

Request Body

{
    "global_picklists": [
        {
            "display_label": "Showroom Location",
            "description": "Use this picklist option to manage showroom locations across all modules in your CRM.",
            "pick_list_values": [
                {
                    "display_value": "New York Showroom",
                    "sequence_number": 1,
                    "actual_value": "New York Showroom"
                },
                {
                    "display_value": "Los Angeles Showroom",
                    "sequence_number": 2,
                    "actual_value": "Los Angeles Showroom"
                },
                {
                    "display_value": "Chicago Showroom",
                    "sequence_number": 3,
                    "actual_value": "Chicago Showroom"
                },
                {
                    "display_value": "Houston Showroom",
                    "sequence_number": 4,
                    "actual_value": "Houston Showroom"
                }
            ]
        }
    ]
}


If the API call is successful, a global picklist will be created with the specified options. The following GIF demonstrates the newly created global picklist in the UI.



Use the Global Set with a Picklist Field in the Required Modules

Create picklist fields in the required modules, such as Leads and Contacts, and link the created Global Set with a picklist field in modules using the Create Custom Field API.

Follow the below steps to link the created Global Set with a picklist field in a module.

Step 1: Retrieve the unique ID of the Global Set 

Retrieve the unique ID of the created Global Set using the GET - Global Picklists API to link it with a picklist field. The below URL retrieves all Global Sets in your org.

Request URL: {api-domain}/crm/{version}/settings/global_picklists
Request Method: GET

Response:


The API retrieves all available Global Sets in the organization.

In this case, the "Showroom Location" field needs to be associated with the modules, and its unique ID is 5725767000004230002. Use the following request URL to view the specific global picklist field along with its options.

Request URL: {api-domain}/crm/{version}/settings/global_picklists/5725767000004230002
Request Method: GET

Response:



Step 2: Use the Global Set in the desired module

Create a new picklist field in the required modules and associate the "Showroom Location" Global Set with the picklist field.
  • Leads - To track customer inquiries by showroom location.
  • Deals - To monitor sales by showroom location.
  • Sales Orders - To process orders based on showroom location.
  • Service Requests - To handle customer service tickets by showroom location.
This post uses the "Leads" module as an example. Use the Create Custom Field API to associate the Global Set with the Leads module.

Request URL: {api-domain}/crm/{version}/settings/fields?module=Leads
Note: The module parameter is mandatory to create a field in a module.
Request Method: POST

Request Body:


{
    "fields": [
        //Associating the Showroom Location Global Set with the Leads module
        {
            "field_label": "Showroom",  //The Showroom field in the Leads module, where the "Showroom Location" Global Set is associated

            "data_type": "picklist", //To associate a global picklist, use the data type "picklist"
            "global_picklist": {
                "id": "5725767000004230002" //ID of the global picklist
            }
        }
    ]
}


Response in the UI:



Use the above process to create the Global Set across modules using the Create Custom Field API

Below are the request URLs to associate the field with other modules as per our use case:

  • {api-domain}/crm/{version}/settings/fields?module=Deals
  • {api-domain}/crm/{version}/settings/fields?module=Sales_Orders
  • {api-domain}/crm/{version}/settings/fields?module=Service_Requests


Update the Global Set Values Using the PATCH Global Picklist Field API

Any changes made to the Global Set will automatically reflect across all modules associated with it. Use the PATCH - Global Picklist Field API to update the values in a Global Set.

Request URL
{api-domain}/crm/{version}/settings/global_picklists/5725767000004230002
Request Method: PATCH

Request Body:


{
    "global_picklists": [
        {
            
            "pick_list_values": [
                {
                    //"display_value": "New York Showroom", 
                    "id": "5725767000004230003", 
                    "type": "unused" // to move the option to the unused state
                },
                {
                    "display_value": "Chicago Showroom",
                    "sequence_number": 3,
                    "actual_value": "Chicago Showroom",
                    "id": "5725767000004230007",
                    "type": "unused",
                    "_delete": null // deleting the option from the global Field
                },
                // Creating a new option or adding a new showroom location to the Global Set 
                {
                    "display_value": "San Francisco Showroom",
                    "actual_value": "San Francisco Showroom"
                },
                {
                    "display_value": "Boston Showroom",
                    "actual_value": "Boston Showroom"
                }
            ]
        }
    ]
}



Using the PATCH Global Picklist API, you can easily manage and perform various operations. In the above request, Zylker performed the following operations:

  • Moving an Option to Unused State: The "New York Showroom" option is marked with "type": "unused", meaning the showroom is moved to the "unused" state, indicating the option is no longer active but has not been deleted from the system.
  • Deleting an OptionThe "Chicago Showroom" option is deleted from the picklist field using the  "_delete": null, meaning the option is removed or deleted from the system and is no longer valid.
  • Adding New OptionsIn addition to the above operations, two new showrooms namely "San Francisco Showroom" and "Boston Showroom", are added to the field using the "display_value"(mandatory) and "actual_value" (optional), as Zylker expands its franchise to new cities and manages them across the modules.
Note: The updated value will replace its old value in areas such as Records, Criteria, Workflow Actions, and Field Dependency. 

Conclusion

Hence, the Global Sets help Zylker keep the showroom location list up-to-date and consistent across modules, making it easier to manage showroom locations in their CRM system.

We trust that this post meets your needs and is helpful. Let us know your thoughts in the comment section or reach out to us at support@zohocrm.com
Stay tuned for more insights in our upcoming Kaizen posts!

Cheers!!!





        • Recent Topics

        • Is zoho SMTP slow today?

          Hi guys, Since yesterday I'm facing a slow communication over SMTP while sending emails. I already tried to use tls and ssl but nothing changes. There is anyone else experiencing related issues? I didn't find any maintenance in progress. Tested another
        • Link project invoices to sales orders

          As a business owner and project manager I create estimates with my clients which then become sales orders. When billing for project work I want to invoice against the agreed sales order. I see that I can create invoices and link them to sales orders in
        • The Urgent Need for Native Brazilian Payment Integrations: PIX and Direct Bank Connections

          Hello Zoho Team, I am writing to emphasize a critical functionality gap for Zoho Books in the Brazilian market: the lack of modern, native payment gateway integrations. The current options are insufficient. The Mercado Pago integration, for instance,
        • How to Fetch Images from Related Modules in Zoho CRM Mail Merge Templates?

          Hi team , Hope this email finds you well. I have a requirement where I need to create mail merge templates within Zoho CRM in such a way that they fetch images from a record stored in a different module. The way it works is I have one module "A" which
        • Zoho Calendar (Refresh Rate)

          Why don't the calendars refresh more than every 12 hours? That is crazy. I cannot be the only user who wants to see this change? I see and understand that I can MANUALLY update them, but need them to auto refresh either (1) whenever there is a change
        • "In Zoho CRM, during the Blueprint transition to the QC stage, I want to make the 'Packing Proof' image field mandatory."

          @Dr Saurabh Joshi @Haiku Technical Support @Ishwarya SG @Sparrow Hill President @Hugh Marshall "In Zoho CRM, during the Blueprint transition to the QC stage, I want to make the 'Packing Proof' image field mandatory."
        • Flow Error

          Hi Zoho Team, Any idea on this? This happens recently. Zoho Desk says "You are not authorized to access this resource."
        • Zoho Books/Square integration, using 2 Square 'locations' with new Books 'locations'?

          Hello! I saw some old threads about this but wasn't sure if there were any updates. Is there a way to integrate the Square locations feature with the Books locations feature? As in, transactions from separate Books locations go to separate Square locations
        • Books/Square integration with multiple bank accounts

          Hello, I need some workaround ideas! We have two parts of our business which have their own bank accounts and customers. We use 'locations' in Square to allocate the payments to the correct place and we use 'branches' in Zoho Books to define which transactions
        • Intergrating multi location Square account with Zoho Books

          Hi, I have one Square account but has multiple locations. I would like to integrate that account and show aggregated sales in zoho books. How can I do that? thanks.
        • [Webinar] Deluge Learning Series - Deluge Learning Series Built-in Functions in Deluge

          We’re excited to welcome you to the next session in our Deluge Learning Series – Built-in Functions in Deluge – Part 1. In this focused 1-hour live session, we will explore the practical use of built-in functions in Deluge scripting, with a spotlight
        • Zoho Hilfe in NRW für Kundenprojekt gesucht!

          Hallo, wir sind auf der Suche für ein Kundenprojekt, wer die Implementierung von Zoho übernehmen kann. Unsere Stärke liegt im Onlinemarketing, bzw. der Automatisierung mit Klick-Tipp und den Tools drum herum. In dem Projekt können wir dem Kunden mit dem jetzigen CRM nicht weiter helfen, bzw. ihn nicht auf die nächste Stufe bringen. Leider komme ich mit meiner Suche in Foren, SocialMedia und sonst wo nicht weiter.  Der Idealfall ist ein gemeinsamer Besuch vor Ort beim Kunden und hier eine Präsentation
        • Gaps in Core HR Functionalities in Zoho People

          Hello People team, We've been using Zoho People for quite some time now and truly appreciate its flexibility and customizability. That said, I wanted to share some feedback based on our experience implementing core HR processes within the platform. Several
        • Product and Service

          Hi guys, there is a difference between layout of product and service if Long Description field have some kind of text. Please see screenshot 1 for Service here: https://prnt.sc/7xWwPKd29nWP for Product here: https://prnt.sc/LGmtVd_U6H7q As you can see
        • Anyone Building AI-Based SEO Dashboards in Zoho Analytics?

          Hey everyone, I’m currently working on an SEO reporting dashboard in Zoho Analytics and looking to enhance it with AI-based insights—especially around AI visibility, keyword trends, and traffic sources. The goal is to track not just traditional metrics
        • Phone Number Integration

          I would like to be able to track my cell phone calls in the CRM.  So if a contact calls my cell phone number, a note of that phone call will be made in the CRM so that I don't have to remember to go back in and add the call manually. Is there a way to connect the CRM and my cell phone via a 3rd party? Such as Google Voice, Skype, etc. Its important that my clients don't have to call a new or different number and that sent calls use the same number as well. So if there is a way to connect my phone
        • Woocommerce Line Item Information

          I'd like to add each line item from a Woocommerce order to a zoho creator form record. The line items are found within the line items array, but I'm not sure how to get each item out of the array? Any help would be much appreciated.
        • Create Encrypted Zoho Forms URL for SMS Pre-Population forms using zfcrm_entity=

          Hello Zoho Forms Community and Zoho Team, I’m trying to send a Zoho Forms URL via SMS with pre-populated CRM contact data, inspired by a post from four years ago by GlennP (https://help.zoho.com/portal/en/community/topic/passing-the-crm). Our form is
        • Sales IQ - Bot Builder - Forward to Operator Action Card Improvement

          Hi team, It would be a great improvement to have an additional branch out of the Forward to Operator Action Card. I would like to allow 10 seconds for an operator to pick up the chat, if they don't or if they reject the chat I would like the Bot to continue
        • Important notice: Migration is needed from the legacy ASAP to the latest ASAP Zoho Desk flow

          We recommend upgrading to the latest version, as the older version will eventually be discontinued and will no longer receive any further enhancements or bug fixes. We are announcing an important update concerning the ASAP help widget in Zoho Desk. The
        • NFC Support

          Hi, I would like NFC Support like Zoho Creator, to pre-fill field values by scanning an RFID device. Zoho Creator NFC here: https://www.youtube.com/watch?v=F4JoMWnF82I Both on a Field's User Input (Mobile Apps), in additon to QR Code & Barcode today,
        • Live webinar: Building brand consistency using Zoho Show

          Getting people to remember your brand isn’t easy. And if your branding isn’t consistent, it becomes almost impossible. One place where consistency really matters? Presentations. Whether it’s a sales pitch, an event deck, or a team update, your slides
        • Getting an error "Not able to connect server. Verify your network connection" during proforma invoice converting to invoice.

          Getting an error "Not able to connect server. Verify your network connection" during proforma invoice converting to invoice. 
        • calendar I created in Zoho Creator not being imported to Google calendar any longer

          A calendar that I created in my Zoho Creator app is no longer updating (or showing up at all) in my google calendar. It used to export appointments I set up in my app to google calendar. I cannot figure out how to correct this.
        • Quoting Subscriptions with one Time costs

          Hello all, We sell a subscription SaaS service for which we provide one-time services for implementation and customization. Using CRM quotes i was able to create customized total fields to show the total one-time costs, monthly cost, total subscription
        • Automatisez efficacement avec le nouveau concepteur de workflows flexibles

          Auparavant, l'automatisation dans les modèles de fusion de Writer se limitait à des actions simples comme « fusionner et stocker », « fusionner et envoyer par e-mail » ou « fusionner et envoyer pour signature ». En revanche, il était jusqu’à présent impossible
        • More context, fewer tabs: View lookup modules' data within a CRM Canvas page

          Hello everyone, How often do your users juggle multiple browser tabs just to piece together the full context of a record? This update can make their lives easier. You can now add lookup modules' fields to a Canvas detail view page and a Canvas list view
        • On click of the Blueprint transition (Qualified or Not Qualified), the 'Convert' option should be enabled in the Lead module.

          On click of the Blueprint transition (Qualified or Not Qualified), the 'Convert' option should be enabled in the Lead module. console.clear(); let convertButton = ZDK.Page.getButton('convert'); let leadStatus = ZDK.Page.getField('Lead_Stage').getValue();
        • Show all items making up the composite item in transactions

          Dear Zoho, Currently, when we select a composite item in Zoho Inventory for a transaction, we do not receive a breakdown of the individual items that make up the composite. This makes it challenging for our team to accurately pick, pack, and ship the
        • Custom Roles & Granular Permission Control in Zoho SalesIQ

          Hello Zoho SalesIQ Team, We appreciate the functionalities offered by Zoho SalesIQ, but we would like to request a crucial enhancement regarding user roles and permissions. Current Issue: At present, Zoho SalesIQ provides fixed roles—Admin, Supervisor,
        • Condition to skip recipient signature

          Is there a way, alone or with a Zoho Form integration, to skip a recipient signature when a condition is set? This happens because in this template, not always all the recipients need to sign it. Sometimes its just a few. We are using a Zoho Form integration
        • How to filter emails by Reply-to field?

          I receive a very particular newsletter from an association A registered on a website W (that is used by many associations), and the emails fields are not great: the From just contains the generic website's W's email, while A is only mentioned in the Reply-to
        • Wich version of Backstage is included in Zoho One

          Hello I am in the event business and i am considering Zoho One to replace my current tools. I will need Backstage to manage my events but I am wondering wich version of backstage will I get if I subscribe to Zoho One. Thank you Guillaume
        • How to restore deleted campaigns?

          I accidentally deleted my first campaign that went out today (08/21/18). How do I restore it?
        • Organize and Clone Task Custom Views

          We have rolled out two new enhancements to task custom views: Custom View Groups and Custom View Clone. Custom View Groups Similar to predefined view groups, we have introduced groups for custom views to help organize and categorize them. My Custom Views:
        • Kits: Option to Hide Associate Items on Documents

          The new Kit type of Composite Item is very helpful, and we're already using it in several different ways. One problem is that there seems to be no way to hide the components on some documents, including Package Slips. There is an option given in settings
        • Zoho Books CREDIT LIMIT is completely USELESS due to a BUG!!! Please fix it ASAP!!

          Credit Limit should not be taken into account if payment terms on the Invoice are without credit. If selected Credit 0 days (Prepayment) why in this world would a notification pop up saying credit limit is exceeded and not allowing to create an invoice?
        • Is it possible to adjust the web browser tab title (when a ZoHo Desk ticket is opened)

          Hi All, When I open a ZoHo Desk ticket in a web browser, the tab title (text that appears at the top of the browser tab) uses the logic: *company icon picture* (xxxx) #ticket number - company name See below (highlighted in red) for reference. Company
        • Configure ChatGPT in Zoho Cliq | Now with GPT-4!

          Updated for GPT-4 Support: The post and scripts has been revised to take advantage of the new GPT-4 model's capabilities. Please use the updated version for enhanced performance and accuracy. If you have been on the internet for the past few months, you
        • Have completed Zoho Sign documents attach automatically to contact and/or account

          Hello, Just used ZohoSign for the first time to get an e-signature on an important document. Setting up the template was nice and easy and configuring the request to go to the right people and training a member of staff was also very easy. HOWEVER Why
        • Next Page