Hello all!
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 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
|
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 Option: The "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 Options: In 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.comStay tuned for more insights in our upcoming Kaizen posts!
Cheers!!!
Recent Topics
Admin Control Over Profile Picture Visibility in Zoho One
Hello Zoho Team, We hope you are doing well. Currently, as per Zoho’s design, each user can manage the visibility of their profile picture from their own Zoho Accounts page: accounts.zoho.com → Personal Information → Profile Picture → Profile Picture
Published Course Not Reflecting In Hub
Hi! I am trying to create micro-learning courses for our team to be available for self-guided learning. I have published the courses with enrollment settings open to all users of the hub, but they don't appear to be available for enrollment. Am I missing
Unlock Locked Users via Zoho One Mobile App
Hello Zoho One Team, We have noticed that in the Zoho One web admin panel, we can unlock a locked user when needed. However, when using the Zoho One mobile app, there is no indication that a user is locked, nor is there an unlock button similar to what
Tip #47- Stay Ahead with Automated Scheduled Reports in Zoho Assist- 'Insider Insights'
We’ve made it easier for you to stay informed, even when you’re busy managing remote sessions! With Scheduled Reports in Zoho Assist, you can now automatically receive detailed insights about your remote support and unattended access activities directly
Colour Coded Flags in Tasks Module List View
I really like the colour coded flags indicating the status of the tasks assigned to a Contact/Deal in the module list view. It would be a great addition to have this feature available in the list view of activities/tasks. I understand you have the Due
Uploading data to S3
Has anyone successfully uploaded data from Creator to S3 using the InvokeURL command or any other method in Deluge? (keywords: S3, AWS, Amazon, bucket)
UPS Label size when generated via Zoho
We've integrated UPS with Zoho inventory. When creating and downloading the shipping labels they are created in a larger paper size. I'd like them to be generated to print on a 4x6 printer. Zoho have told me I need to do this within our UPS portal. UPS
Credit Management: #4 Credits on Unused Period
Recall a familiar situation. You sign up for a monthly gym membership. You pay the subscription fee upfront, get motivated, and show up consistently for the first week. Then, suddenly, you get caught up in work deadlines, travel plans, or a dip in motivation.
Zoho Analytics Automatically Deletes Queries and Reports When a Synced CRM Field Is Removed
We’ve encountered a serious and recurring issue that poses a massive data integrity risk for any Zoho Analytics customer using Zoho CRM integration. When a field is deleted in Zoho CRM — even an unused one — Zoho Analytics automatically deletes every
Prevent new Record Association
Hello all, We have a small sales organization therefore, it's helpful for everyone on the sales team to be able to view the full list of accounts to assist in preventing duplicate accounts from being created. However we want to prevent people from creating
Tip of the Week #73– Automate workflow with Make integration.
Make is a no-code workflow automation platform designed to connect your favorite apps and automate repetitive tasks across services. By integrating Make with Zoho TeamInbox, you can streamline everyday inbox management and save valuable time. With this
Viewing attachments
I'm using a Web Form integrated in my web site to collect Leads several info, including a image upload. In order to to approve each lead, we have to view the image uploaded. Unfortunately, in the Leads view, the Attachments can only be downloaded, not
Kaizen #89 - Color Coding using Client Script
Hello everyone! Welcome back to another exciting Kaizen post. Today let us see how you can apply color codes to the List and Detail Pages of Zoho CRM using Client Script. Need for color code in Zoho CRM When you mark things with different colors as a
Instant Sync of Zoho CRM Data?
With how valuable Zoho Analytics is to actually creating data driven dashboards/reports, we are surprised that there is no instant or near instant sync between Zoho CRM and Zoho Analytics. Waiting 3 hours is okay for most of our reports, but there are
Is it possibly to directly set the tax amount on order instead of indirectly via tax rates?
We own an eCommerce application and want to funnel submitted orders from that system into Zoho. We're already calculating tax in our application and just need a way to set it in Zoho. We tried to use Zoho's tax objects for tax by setting the rates to
Zoho account sign in with passkey
Hello, I am trying to sign in using passkey, but the option doesn't show up in the web and is disabled in Oneauth on mobile, saying the admin has restricted the use. On the Admin page in Security MFA I can find no option for passkey. Help would be greatly
Rescheduled US meetups: Zoho Desk user meetups are coming to seven U.S. cities in October and November, 2025
Hello to our Zoho Desk users in the United States, We're excited to share the revised dates for the upcoming Zoho User Groups happening across the US this summer. Our product experts are heading to seven cities throughout the country, and for the first
Checklists as templates
Is it possible to save checklists as templates to reuse them in other tasks? Example: I have a web project. I maintain individual web URLs as tasks. Within the tasks the same checklist should be used again and again: - Page created in CMS - Properties
Send mass email using my secondary email
Hello, When I send an email to just one person from Zoho CRM, a complete email editor appears, where I can choose which of my email addresses I want to use in the From field. When I send a mass email, there is not such option. I can only select the email
ZOHO TEAM INBOX Calendar Integration
The Problem: Clients send meeting invitations to our TeamInbox address. TeamInbox receives these invites, but we cannot accept them. We do not use individual inboxes for transparency purposes. Ideal Solution: A way to accept calendar invites sent to our
Unearned / Deferred Revenue Automatic Calculation for Subscriptions
As a SaaS business, we have multiple active subscriptions with varying dates and amounts. Is there a way to have a monthly automatic calculation for all of them that debits or credits the unearned revenue and revenue accounts accordingly? Alternatively,
Zoho Desk Limit for Comma Separated Queries
Hi, I have just discovered a limit that I believed is not mentioned in any of Zoho's documentations. My search query looks like so: "query: {"accountId":"786050000091629966,786050000163589273,786050000163589427,786050000162753705,786050000162112971,786050000161987643,786050000160752868,786050000167089504,786050000167089378,786050000167089024,786050000167070005,786050000166295256,786050000128153693,786050000110560021,786050000046594575,786050000039106461,786050000002225356,786050000076889093,786050000047895103,786050000043365354,786050000044765191,786050000041790249,786050000040359116,786050000037945198,786050000024605077,786050000000525015,786050000155333895,786050000157741437,786050000000718125,786050000011574353,","departmentId":"786050000042648070","status":"Finished","sortBy":"createdTime","customField2":"cf_completion_date:2025-01-28T03:00:00.000Z,2025-10-28T03:00:00.000Z","customField3":"cf_billed:false"}"
Module Name doesn't exist
I am trying to create a module named Activity, with plural Activities, but I have an error that module name already exists. This module is doesn't exist, and I don't have a single field called Activity or Activities.
Zoho Desk iOS and Android app update: AI powered: Reply Assistance and Refine Messages on IM module.
Hello everyone! We are excited to introduce new AI powered features on the IM module of the Zoho Desk app. Reply Assistance: Reply Assistance generates suggested responses for incoming chat messages, which you can directly insert into the conversation
Unify All Zoho Video Meeting Experiences into One Standardized Platform
Hi Zoho Team, We would like to share an important user experience concern regarding the current state of video meeting functionality across the Zoho ecosystem. The Problem Within Zoho, there are multiple ways to initiate or schedule a video meeting: Zoho
Is it possible to embed Youtube shorts?
Hi Zoho desk support, This is Ryan from Accuver America. While I'm trying to create a knowledge base article with embed video, I ran into this issue. "www.youtube.com refuse to connect" A little bit background is that because this video is recorded on
Zoho Inventory - Move Orders
Quick question about Move Orders... Why is there no status to say something like "Draft", "In Progress" and "Completed", similar to Transfer Orders? I'm assuming that when something needs to be moved it should be planned in Inventory, executed and then
Split functionality - Admins need ability to do this
Admins should be able to split an expense at any point of the process prior to approval. The split is very helpful for our account coding, but to have to go back to a user and ask them to split an invoice that they simply want paid is a bit of an in
Delegates - Access to approved reports
We realized that delegates do not have access to reports after they are approved. Many users ask questions of their delegates about past expense reports and the delegates can't see this information. Please allow delegates see all expense report activity,
How to include total km for multiple trips in expense report.
Whenever I create a mileage report it only shows the total dollar amount to be reimbursed. The mileage for each individual trip is included but I also need to see the total distance for all trips in a report? How do I do this?
Get logged in user ID in Deluge script
Hello all, How do I get the id of the logged-in user in a deluge script? the "zoho.loginuserid" function actually returns the users email address or whatever the user id they use to login to zoho with and not the id of the user record, and given that
Item Details Field - New Barcode / Document option?
Is this a new feature??? its in both books and inventory.
Shared Mailbox - Mark as read for all users
Hi all, Maybe someone can help me out. At the moment we have a shared mailbox without streams. When a users reads an mail or marks it as read other users will not see this. How can we resolve this? We now archive the mails when read and followed up. However
How do I increase the email attachment size in Zoho CRM ?
It looks like I'm limited to 10MB when sending an attachment using the email widget on a record in Zoho CRM. Is there a way to increase the size? Or can I use some other tool? From what I'm reading online, I'm maxed out at 10MB. Any insight would be greatly
Can I export to PDF in Zoho Learn
I have seen help pages where export to pdf options are available but I do not see that option available from the application. I see that exprt is available in my free trial version but that is only to html pages. I need to be able to export my manuals
Zoho Sites "pages" management page
I have 80 plus pages on zoho sites. When I go to the "pages" link to view and edit pages, They are not in any kind of order, so I spend lots of time searching for pages when I need to edit or create new. How can I change the view order of all my pages
Staff rules
Hi! Do you people know what are the default staff rules when a new booking is created? We have two staff members in my team (me as the admin, and my employee). As we share the same services, I'm wondering how Zoho will pick the staff for new apointments.
Add Image Upload Field to Zoho Bookings Registration Form
Hi, We would like to request the addition of an image upload field to the Zoho Bookings registration form. Currently, Zoho Bookings only supports text-based fields (e.g., Single Line, Multi-Line, Email, Checkbox, Dropdown, Radio Button, and Date), but
Merge Tags Output Incorrect Placeholder Text After CRM Sync
Hi everyone, I’m experiencing an issue with merge tags in Zoho Campaigns after last sync of contacts and leads from Zoho CRM (days before everything worked perfectly). Here’s the situation (seems like a default configuration in Campaigns) : My leads have
UI Improvement - Ability to Collapse Flow
The UI for Flow is generally pretty good. However, when multiple decision trees are used, the layout can get pretty convoluted and hard-to-follow (see one of my Flows below): In these cases, even the auto-arrange fails to make this something that a normal
Next Page