Hello everyone!
Welcome to another week of Kaizen! In this post, we will discuss multi-user lookup fields and how to handle them in API.
What is multi-user lookup?
Multi-user look up is a lookup field that lets you add multiple users to a module record. It allows you to establish many-to-many relationships between modules and users in CRM.
For instance, consider the example of a real estate firm - Zylker Real Estates. Zylker Real Estates uses Zoho CRM for managing properties, buyers, sellers, etc. The real estate agents in Zylker Real Estates are added as users . We might have one or more agents managing a single property. A multi-user lookup field in the property module allows multiple agents to have read/write access to one property record.
You can add a multi-user lookup field to a module through the module builder. Go to Setup > Customization > Modules and Fields > {Module}. This field can be added in all modules except the Calls, Tasks,Meetings and Linking Modules. You can add only 1 multi-user lookup field in a module that can include up to 10 users. In the screen-shot below, multi-user lookup field "Associated Agents" is added with full record accessibility.
When you enable 'Allow Record Accesibility', users selected in the multi-user lookup field will be able to 'Edit', 'Delete', 'Change the owner' of that respective record. You can also grant different levels of permission to the users. You can choose from Read only, Read/Write, Full access.
Handling multi-user lookups through API
Let us see how to handle multi-user lookup fields through API. Note that, we have used the V4 API in examples, here.
Inserting value to multi-user field
You can use
Insert Records API to add a record with multi-user lookup. This support is available only from CRM API version 2.1 and up.
For example, for Zylker Real Estates a new property "Villa" can be added with the below API request. Two associated agents are also added.
Details Required :
- ID of the users that you want to add to the multi-user field. You can get this from Get Users API In this example 431581000000278001 is the ID of the user J Smith and 431581000000258001 is the ID of the user Patricia Boyle.
- The connectedlookup_apiname and api_name for the multi-user field that you want to add. You can obtain these details from the multi-user field's json object in the response of Field Meta Data API of the Properties module.
Sample Response to field meta data API
Request URL : {api-domain}/crm/{version}/settings/fields?module={module_api_name}
Request Method: GET
{ "fields": [ { . . "display_label": "Associated Agents", . . "api_name": "AssociatedAgents", . . "multiuserlookup": { "display_label": "Users", "linking_module": { "api_name": "Properties_X_Users", "id": "431581000000701218" }, "lookup_apiname": "userlookup221_7", "connected_module": null, "api_name": "Users7", "connectedlookup_apiname": "Agents", "id": "431581000000701345", "record_access": true }, . .
} ] } |
Sample Input to add a record with multi-user lookup
Request URL : {api-domain}/crm/{version}/{module_api_name}
Request Method: POST
{ "data": [ { "Property_Name": "Villa", "AssociatedAgents": [//api_name { "Agents": {//connectedlookup_apiname "id": "431581000000278001" }, }, { "Agents": {//connectedlookup_apiname "id": "431581000000258001" }, } ], } ] } |
This is what the record looks like in UI.
Sample Response
{
"data": [ { "code": "SUCCESS", "details": { "Modified_Time": "2023-05-25T12:52:03+05:30", "Modified_By": { "name": "Patricia Boyle", "id": "431581000000258001" }, "Created_Time": "2023-05-25T12:52:03+05:30", "id": "431581000000697288", "Created_By": { "name": "Patricia Boyle", "id": "431581000000258001" }, "$approval_state": "approved" }, "message": "record added", "status": "success" } ] } |
Fetching the value of multi-user field
You can use
Get Records API to fetch details of your multi-user lookup field. Note that it is returned in the response only when you fetch a specific record. Let us see how to fetch details of a record.
Details Required : ID of the record for which we need to fetch the multi-user field's value
Request URL : {api-domain}/crm/{version}/{module_api_name}/{record_id}
Request Method: GET
Sample Response
{ "data": [ { "AssociatedAgents": [ { "Agents": { "name": "Patricia Boyle", "id": "431581000000258001" }, "id": "431581000000697290" }, { "Agents": { "name": "J Smith", "id": "431581000000278001" }, "id": "431581000000697289" } ], "id": "431581000000697288", "$canvas_id": null, "$has_more": { "AssociatedAgents": false } } ] } |
Here the highlighted IDs are the IDs of the linking modules created for the multi-user fields. Unlike linking modules for multi-select lookups, these are not exposed in the UI.
Disassociating users from the multi-user lookup field
You can use
Update Records API with the key
_delete to disassociate users from a multi-user lookup. You can refer to the sample input below for the same.
Details Required : ID of the module records and ID of the linking module of multi-user lookup. These can be obtained from the GET Record Response.
Sample Input
Request URL : {api-domain}/crm/{version}/{module_api_name}/{record_id}
Request Method: PUT
{ "data": [ { "AssociatedAgents": [ { "id" : "431581000000697061" , "_delete" : null } ] } ] } |
Here the highlighted ID inside the AssociatedAgents array is the ID of the linking module record. You can obtain the ID from the
Get Records API response
Sample Response
{ "data": [ { "code": "SUCCESS", "details": { "Modified_Time": "2023-05-24T15:15:28+05:30", "Modified_By": { "name": "Patricia Boyle", "id": "431581000000258001" }, "Created_Time": "2023-05-24T14:30:23+05:30", "id": "431581000000697060", "Created_By": { "name": "Patricia Boyle", "id": "431581000000258001" } }, "message": "record updated", "status": "success" } ] } |
We hope you found this post useful and it has given you a better understanding of multi-user lookups. We will meet you next week with another interesting post.
If you have any questions, let us know in the comment section or write to us at
support@zohocrm.com
Recent Topics
lookup and integrated forms
I might be misunderstanding things but I wanted to integrate our zoho crm contacts into creator. I imagined that when I used the integration it would mirror into creator. It did brilliant. BUT We have a ticket form in creator that we want to use a lookup
Partially receive PO without partial Bill?
Most of our inventory is pre-paid. Let's say we purchase 30 pieces of 3 different items for a total of 90 pieces. It is common for our supplier to send us the items as they are ready. So we will receive 30 pieces at a time. How can I partially receive
2 users editing the same record - loose changes
Hello, I'm very new to Zoho so apology if this has been addressed somewhere i can't find. I have noticed the following: If we have 2 users put an inventory item in edit mode at the same time: say user1 click on edit and user2 while user1 is still in edit,
How to get the Dashboard page to be the first page when you open the app
So when it opens on a tablet or phone it opens on the welcome page, thanks.
How I set default email addresses for Sales Orders and Invoices
I have customers that have different departments that handle Sales Orders and Invoices. How can i set a default email for Sales Orders that's different than the default email for Invoices? Is there a way I can automate this using the Contact Persons Departments
Formula fields not refreshing until page is reloaded
I need help/advice about the formula fields and how I can refresh the information in real-time. We have two formula fields on our deals page which show calculated prices: One formula is in a subform which calculates the subform total + 1 other field amount
How can I setup Zoho MCP with Chat GPT
I can set up custom connections with Chat GPT but I cat an error when I try to set it up. The error is: "This MCP server can't be used by ChatGPT to search information because it doesn't implement our specification: search action not found" Thoughts?
API ZOHO CRM Picket list with wrong values
I am using Zoho API v.8. with python to create records in a custom module named "Veranstaltung" in this custom module I've got a picket list called "Email_Template" with 28 Values. I've added 8 new values yesterday, but if I try to use on of those values
Group Emails
I have synced Zoho CRM to Campaigns but there are certain email not synced. showing it is Group Emails, but this email ids belongs to different individuals. please provide a solution as i nedd to sync the same.
Enable Password Import option in ulaa browser
Dear Ulaa Team, I noticed that the Ulaa Password Manager currently offers an option to export passwords, but not to import them. This limitation poses a challenge for users like me who have stored numerous credentials in browsers like Chrome. Manually
"Is Zoho CRM customer" vs "Is linked with Zoho CRM"
Recently while building a Flow, I was setting up a Decision action following a Zoho Invoice Fetch record action. There were 2 choices that I had not seen as something I could manually action in Zoho Invoice: "Is Zoho CRM customer" and "Is linked with
Client Script | Update - Introducing ZRC: Simplified HTTP request library
Hello Developers! Are you tired of juggling different methods to make API calls? Are you confused with multiple syntaxes and version restrictions? Have you ever wished for one simple way to make all API calls in CRM? We heard you :) Here comes ZRC (Zoho
Selection Filed for Data Export section
Hi FSM Team, I hope you are all doing well. I would like to share an idea for future development based on my experience. Currently, in FSM, we can only download up to 5,000 records at a time. If the development team could add a selection option to choose
Text wrap column headers in reports?
Is it possible to auto wrap column headers so that a longer multi-word header displays as two lines when the column is narrower than the width of the header title?
What if I dont see contacts on the left side list
My CRM does not show the contacts tab. In order to create list this is needed and I cant find it.
Comments Vs. Replies
I'm curious as to the difference between a "Reply" and a "Comment" on a ticket. It appears that "Replies" are what's used to determine response time SLA's and there are also used to automatically re-open tickets. I'm just trying to understand the key differences so I can educate both our clientele and our back-end users on which function/feature to use to better improve the ticket lifecycle. If anyone has any insight it would be appreciated. Thanks!
Transitioning to API Credits in Zoho Desk
At Zoho Desk, we’re always looking for ways to help keep your business operations running smoothly. This includes empowering teams that rely on APIs for essential integrations, functions and extensions. We’ve reimagined how API usage is measured to give
Resetting auto-number on new year
Hi everyone! We have an auto-number with prefix "D{YYYY}-", it generates numbers like D2025-1, D2025-2, etc... How can we have it auto-reset at the beginning of the next year, so that it goes to D2026-1? Thanks!
Can you prevent closing Ulaa window when the last tab is closed (inadvertently)?
Most browsers have started to bring this feature in to prevent closing their windows when the last tab is closed (inadvertently). I hope Ulaa should get this in too.
Microsoft Phone Link
Does anyone know if you can use Microsoft Phone Link to make calls through Zoho?
Voip Phone system that integrates with Zoho
Just checking to see if anyone could tell me what phone system they are using with Zoho that is on the list of systems that integrate with Zoho. I use Vonage and have been with them for quite a few years but their service has really gone down hill and
Removing Related Modules Lookup Fields Assignment / Relationship
Issue: When creating a related list, I accidently selected module itself creating a circle reference. See attached. Situation: I wish to relating a custom module called "Phone Calls" to Leads and Contacts. Outcome: 1) I either want to remove the this
Multiple email accounts, one phone
Hi, I have my own businesses that use Zoho mail, now I would like to use zoho mail also for a local charity. But I noticed adding a phone number is compulsory for registering an account, and I only have one phone. This means I can not open an account because my phone number is already in use for another account. Can this be fixed? Thanks Vincent
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
Seriously - Create multiple contacts for leads, (With Company as lead) Zoho CRM
In Zoho CRM, considering a comapny as a lead, you need us to allow addition of more than one contact. Currently the Lead Section is missing "Add contact" feature which is available in "Accounts". When you know that a particular lead can have multiple
can I link a contacts to multiple accounts
can I link a contacts to multiple accounts
Free webinar! Digitize recruitment and onboarding with Zoho Sign and Zoho Recruit
Hello, Tired of being buried in onboarding paperwork? With the integration between Zoho Sign and Zoho Recruit, a powerful applicant tracking system, you can digitize and streamline the entire recruitment and onboarding process, all from one platform.
Open Activities view.
I really like the new views for the open and closed activities inside the deals. But when you are in the tab view instead of the column view you can only complete and edit the open activity there isn't the 3 dot option to be able to delete the activ
Potentially Outdated and Vulnerable Chromium Engine Installed by Ulaa Browser Installer
I just installed Ulaa Browser a few minutes ago. Whats My Browser page shows I am using an outdated Chromium engine meaning I might be vulnerable for security exploits that might have got fixed in the new version.
Potentially hardcoded list of Browsers to import from (after Ulaa Setup)
I have just installed Ulaa Browser and found that the list of browser to import data is potentially hardcoded ones rather than looking at the system. I do not have FF, IE and Edge is not my default itself. I would appreciated if Ulaa detected my browsers
From Layout to Code: Finding Custom Field IDs in Zoho Projects.
Hello everyone! Ever found yourself wondering how to get the API names and IDs of custom fields in Zoho Projects while working on custom functions? Here’s a simple and effective way to do it! This method makes it super easy to locate the right field details
Can I create multiple Zoho mail accounts?
Hey there I've searched the FAQ for this but didn't find the answer I was looking for. I like to have a different e-mail address for personal stuff, for creating account on websites, and for online banking / e-commerce. Is it allowed to create three accounts for one person on Zoho? I already have one personal e-mail address, can I sign up two more times from the homepage? Thanks
Employee type and source translation
In Zoho People, when I fill in the employee’s information, there is the option to determine the type of employment (employee type) and the hiring source. Both options ALWAYS appear in English. It is extremely inconvenient to deal with poorly translated
Sync Issue Between Zoho Notebook Web App on Firefox (PC) and Android App
Hi Zoho Notebook Community, I'm facing a sync problem with Zoho Notebook. When I use the web version on Mozilla Firefox browser on my PC, I create and save new notes, and I've synced them successfully. However, these new notes aren't showing up in my
Request for Clarity on Timeline for True GPT/Zia Auto-Response Capabilities
I appreciate Zoho’s steady innovation, but I’m concerned that Desk and Zia remain well behind modern AI capabilities. For years, GPT-based tools have been able to generate and send contextual responses, yet Zoho Desk only supports summarization or suggested
Notebook audio recordings disappearing
I have recently been experiencing issues where some of my attached audio recordings are disappearing. I am referring specifically to ones made within a Note card in Notebook on mobile, made by pressing the "+" button and choosing "Record audio" (or similar),
Has anyone built a ticket export that allows Help Center users to export the tickets shown in the My Area list they are looking at?
Hi, We are moving to Zoho Desk soon. Our current support system displays an option in our help center allowing customers to export their Open, Closed, or all tickets based on which list they are looking at. We need to offer the same in Zoho Desk help
Zoho Desk: Q2 2025 | What's New
Hello everyone, We are excited to announce Zoho Desk's 2025 Autumn updates. This release brings new features and enhancements that improve work management and enable businesses to provide a better overall support experience. Spanning from Zia Agents to
Checkboxes not adhering to any policy in mail merge - data from CRM
I want checkboxes to appear depending on whether the checkbox in the CRM module is ticked or not. However, the tickboxes that appear are either ticked or not, but don't correlate to the actual selections in the CRM module. This is is despite updating
Items Landed Cost and Profit?
Hello, we recently went live with Zoho Inventory, and I have a question about the Landed Cost feature. The FAQ reads: "Tracking the landed cost helps determine the overall cost incurred in procuring the product. This, in turn, helps you to decide the
Next Page