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!!!



    • Sticky Posts

    • Kaizen #198: Using Client Script for Custom Validation in Blueprint

      Nearing 200th Kaizen Post – 1 More to the Big Two-Oh-Oh! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
    • Kaizen #226: Using ZRC in Client Script

      Hello everyone! Welcome to another week of Kaizen. In today's post, lets see what is ZRC (Zoho Request Client) and how we can use ZRC methods in Client Script to get inputs from a Salesperson and update the Lead status with a single button click. In this
    • Kaizen #222 - Client Script Support for Notes Related List

      Hello everyone! Welcome to another week of Kaizen. The final Kaizen post of the year 2025 is here! With the new Client Script support for the Notes Related List, you can validate, enrich, and manage notes across modules. In this post, we’ll explore how
    • Kaizen #217 - Actions APIs : Tasks

      Welcome to another week of Kaizen! In last week's post we discussed Email Notifications APIs which act as the link between your Workflow automations and you. We have discussed how Zylker Cloud Services uses Email Notifications API in their custom dashboard.
    • Kaizen #216 - Actions APIs : Email Notifications

      Welcome to another week of Kaizen! For the last three weeks, we have been discussing Zylker's workflows. We successfully updated a dormant workflow, built a new one from the ground up and more. But our work is not finished—these automated processes are
    • Recent Topics

    • Posibility to add Emoticons on the Email Subject of Templates

      Hi I´ve tried to add Emoticons on the Subject line of Email templates, the emoticon image does show up before saving the template or if I add the Emoticon while sending an Individual email and placing it manually on the subject line. Emoticons also show
    • Task Deletion Restriction & Strict Stage Control

      Hello Zoho Community, We have the following two issues currently pending and under testing, for which we require a workable and reliable solution: 1. Task Deletion Restriction We are testing ways to ensure that staff users are not able to delete tasks
    • Unable to mass update a picklist field

      Hello, I have the records within our Accounts module divided between two account types: Parent Accounts & Member Accounts. I am attempting to mass update accounts from one picklist value to the other (within other specific criteria in our custom fields)
    • Process checklist in CRM

      Hi We've created a new sales process that I'm mapping into the CRM - issue I have is that some of the tasks / milestones I would like to capture require very simple tick box responses but there are quite a few under a variety of sub categories so I don't
    • CRM project association via deluge

      I have created a workflow in my Zoho CRM for closing a deal. Part of this workflow leverages a deluge script to create a project for our delivery team. Creating the project works great however, after or during the project creation, I would like to associate
    • This user is not allowed to add in Zoho. Please contact support-as@zohocorp.com for further details

      Hi Team, when I,m trying to create a email account (imagixmidia.com.br) it's showing this error >>  This user is not allowed to add in Zoho. Please contact support-as@zohocorp.com for further details plz help me  thanks
    • How to manage task lists in Zoho Desk?

      Hello, I use Zoho Desk for IT customer support. I have a list of standard operating procedures (SOPs), including SOPs for onboarding new users, offboarding users, losing a device, etc. These are lists of tasks to be performed depending on the situation.
    • Zoho Books' 2025 Wrapped

      Before we turn the page to a new year, it’s time to revisit the updates that made financial management simpler and more intuitive. This annual roundup brings together the most impactful features and enhancements we delivered in 2025, offering a clear
    • Activating Zobot instead of chat

      Hi folks, I know this will be obvious, but I have not been able to locate the details on this via google or youtube. We've had SalesIQ life chat set up for a while now and it is working perfectly. I have just finished development of a Zobot (using codeless)
    • Adding a new section to the related details sidebar when creating a new ticket.

      Hello, I was wondering if you can add a new section to the related details sidebar when creating a new ticket. I was wanting to have it to where it also shows the account information related to the contact chosen as well. This is the section I am referring
    • Displaying only unread tickets in ticket view

      Hello, I was wondering if someone might be able to help me with this one. We use filters to display our ticket list, typically using a saved filter which displays the tickets which are overdue or due today. What I'd really like is another filter that
    • Is Zoho Shifts included in the Zoho One plan?

      In case the answer is no: there's any plan to make it available via One? Thank you
    • Zoho Tracking Image location

      So we've been having an issue with tracking email opens. Specifically in Gmail. Our emails are not that long either, maybe 4 sections of image/250 characters of text/button per section.  But all my test accounts I used via Gmail we're showing opens. But then come to find out the tracking image is at the very bottom of the email. So If the message is clipped (It always just clips our social icons on the bottom) and the user doesn't click the show more button it never tracks the open.  Looking at other
    • Creating an invoice to be paid in two installments?

      Hi there, I own a small Photographic Services business and have not been able to find a way to fit my billing system into Zoho, or any other Accounting software. The way my payments work is: 1. Customer pays 50% of total price of service to secure their
    • Zoho Tables is now live in Australia & New Zealand!

      Hey everyone! We’ve got some great news to share — Zoho Tables is now officially available in the Australian Data Center serving users across Australia and New Zealand regions! Yes, it took us a bit longer to get here, but this version of Zoho Tables
    • Delivery and handling of documents e-stamped using Zoho Sign

      Hello everyone! Zoho Sign makes it easy to pay non judicial stamp duty online and automatically attach the digitally generated e-stamp challan to electronic documents. We also manage the delivery of physical e-stamped papers. We periodically receive these
    • 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
    • Sortie de Zoho TABLE ??

      Bonjour, Depuis bientôt 2 ans l'application zoho table est sortie en dehors de l'UE ? Depuis un an elle est annoncée en Europe Mais en vrai, c'est pour quand exactement ??
    • Drop Down Value

      Hi, May I know why Zoho Flow treat this drop down as number and not as string. If so, how can I fetch the right value for filtering. This field is from Creator, in Creator upon checking by default it is a string since it's not a lookup field.
    • Zoho CRM's mobile apps: A 2025 Recap

      2025 marked a year of steady progress for Zoho CRM's mobile apps. We rolled out several updates and features to improve usability and make everyday CRM work a lot easier to manage. Here’s a look back at some of the key releases from 2025. Android releases
    • Facebook follower count doesn't match FB Analytics

      Hi all, I am wondering if anyone else has issues with follower counts for Facebook not matching FB's native analytics tool. On the Zoho dashboard, it's showing 1,007, but FB shows 1,060. All the other channels match up. Any insights are much appreciated!
    • Meta and Facebook data report discrepancy

      I have been currently gathering manually facebook follower data thru meta. In zoho marketing plus the social media reporting only allows for page likes, and so there is a discrepancy with the data. please the difference in files attached. Is there way
    • Unlocking New Levels: Zoho Payroll's Journey in 2025

      Every year brings its own set of challenges and opportunities to rethink how payroll works across regulations and teams. In 2025, Zoho Payroll continued to evolve with one clear focus: giving businesses more flexibility, clarity, and control as they grow.
    • Can I export all attachments from Zoho CRM?

      Can I export all attachments from Zoho CRM?
    • Community Digest — Noviembre y Diciembre 2025

      ¡Hola, Comunidad de Zoho en Español! Cerramos el año de la mejor forma con nuestro último Community Digest de 2025, donde podrás encontrar las últimas novedades de nuestros productos. ¿Todo listo para empezar 2026 con el mejor pie? ¡Vamos a ello! Zoho
    • Zoho Projects Plus’ 2025- the year we launched

      We’ve been building project management tools for the past 19 years, and a question we often hear is: Different teams in our organization prefer different project management methods; while the development team prefers agile, the marketing and sales teams
    • How do you print a refund check to customer?

      Maybe this is a dumb question, but how does anyone print a refund check to a customer? We cant find anywhere to either just print a check and pick a customer, or where to do so from a credit note.
    • Company Multiple Branch/ Location Accounting

      Hi All, anyone know whether company can maintain their multiple Branch Accounting in Zoho  Books. It will be chart of Accounts & Master Data will be same but different report available as per per Branch. Thanks & regards, Vivek +91 9766906737
    • Zoho Books Invoices Templates

      It would be really helpful to have more advanced features to customise the invoice templates in Zoho Books. Especially I´m thinking of the spacing of the different parts of the invoice (Address line etc.). If you have a sender and receiver address in
    • Email Administrators! Join our tips & troubleshooting series

      Greetings to all the admins out there! This announcement is exclusively for you. As we step into the New Year, we’re excited to start a dedicated series of admin-specific tips curated to support you. These posts will help you overcome everyday challenges
    • Free Webinar : Unlock AI driven business insights with Zoho Inventory + Zoho Analytics

      Are you tired of switching between apps and exporting data to build customized reports? Say hello to smarter & streamlined insights! Join us for this exclusive webinar where we explore the power of the Zoho Inventory–Zoho Analytics integration. Learn
    • Import Function: ONLY update empty fields

      When setting up an import from a spreadsheet to CRM, there is a checkbox "Don't update empty values for existing contacts" (see screenshot below). While I see some limited benefit from this functionality, I think there should also be an "ONLY update empty
    • Begin the year with best practices in the Zoho Desk mobile app : Part 2

      In focus: Optimizing collaboration and supervision Let's begin 2026 with Part 2 of our tips series on driving your ticketing operations at your fingertips. In Part 1, we explored streamlining operations within tickets. This helped individuals at Omniserve
    • How to update "Lead Status" to more than 100 records

      Hello Zoho CRM, How do I update "Lead Status" to more than 100 records at once? To give you a background, these leads were uploaded or Imported at once but the lead status record was incorrectly chosen. So since there was a way to quickly add records in the system no matter how many they are, we are also wondering if there is a quicker way to update these records to the correct "Lead Status". I hope our concern makes sense and that there will be a fix for it. All the best, Jonathan
    • JWT Token authentication problem that sometimes generates infinite redirect loops

      Description : Nous proposons un bouton sur notre plateforme permettant de rediriger l'utilisateur vers le portail ZohoDesk via un jeton JWT pour une authentification transparente. Cependant, il arrive que certains utilisateurs soient pris dans une boucle
    • ZOHO Work Drive Back Up

      I am looking for a ZOHO Work Drive backup solution. Something that is cloud based. There's lots of these kinds of options for Google Drive and other providers, but I have not seen anything for WorkDrive. Any suggestions?
    • ZOHO Reports - Filter Logic?

      Hi, I need a way to apply filter logics such as ((1 AND 2) OR 3). All I can see as of now is a way to enter different AND filters in the respective filter column. But how can I add an OR filter? Any advice would be highly appreciated. Mark
    • Recruit API search

      Hi all, Attempting to call the search api endpoint from Postman using the word element as mentioned in api docs Search Records - APIs | Online Help - Zoho Recruit When making the call to /v2/Candidates/search?word=Saudi receive response of { "code": "MANDATORY_NOT_FOUND",
    • Saving reading position + Keep screen on

      While Zoho Notebook is excellent for saving and annotating articles, its utility is severely limited by the lack of reading progress synchronization. On the Android app, if a user exits a long note after reading 50%, the app fails to save the position.
    • Multiple Vendor SKUs

      One of the big concerns we have with ZOHO Inventory is lack of Vendor Skus like many other inventory software packages offer. Being able to have multiple vendor skus for the same product would be HUGE! It would populate the appropriate vendor Sku for
    • Next Page