Kaizen #1 - Fields in CRM #API

Kaizen #1 - Fields in CRM #API

Hey everyone, welcome to the Zoho CRM Developer Community series. The series is named 'Kaizen', meaning continuous improvement. Through these series of posts, we aim at resolving all the frequently asked questions, common hurdles, and discuss the best practices to be followed by the CRM developer community.

We have five different streams under kaizen. Each one is related to a different stream of CRM developmentAPI v2.0, Functions, SDK, Mobile Development, and Widgets. Every post will be tagged under one of these streams with a hashtag(#). Based on your area of expertise, you can choose to follow any of them. 

So, here is the drill: 
  • We will drop a few eggs of knowledge on a most discussed topic in our developer community forum, and tag it under one of the five streams. 
  • As always, you can keep the questions coming and kick start a productive discussion. 
  • The routine iterates every Friday.
Since this is our first forum post, we decided to start with something basic.

The problem


In ZohoCRM, data is organized into fields (individual chunks of data). For instance, 'First Name', 'Email', and so on. 

As we are all aware, there are multiple field types available in Zoho CRM. Each field type has its limitations on the type and length of data that can be stored in that particular field. It is essential to adhere to these restrictions while inserting, updating, upserting data. If not, it can lead to unsuccessful requests and errors. 

What you will learn from this post


In this post, we are going to walk you through the following, to give you a better idea of different field types in Zoho CRM and their role while inserting, updating, and upserting records. 

  • Different types of fields in Zoho CRM
  • Details about each field type - [ data type, limitations (what type of characters are accepted), size ]
  • Inserting records in Zoho CRM- with emphasis on fields [System-defined mandatory fields for each module]
  • A few use-cases on inserting records in Zoho CRM

a. Different types of fields in Zoho CRM


Fields are used to store data in a structured way in Zoho CRM. 

Based on how the data is stored, they are of two types:


(i) Read-only fields - For these fields, data is system generated. For instance, "created_by", "created_time", "last_activity_time", "modified_by", "modified_time", and so on. Users cannot modify these fields.
 
(ii) Read/Write fields - For these fields, data is set by the user. For instance, "first_name", "last_name", "email", and so on. 

For custom fields and default fields, you can update this property by editing the field-permissions in the set-up screen in UI. You set the fields to be either read-only, read/write, or hidden.

Note that this property cannot be altered for system-defined mandatory and custom mandatory fields.

b. Details about each field type


Just like data types available in multiple programming languages, there are multiple field types in Zoho CRM, allowing you to store different types of data about your customers, users, vendors, and so on. For instance, we have 'Single Line' field type where you can store strings, it allows you to store all the alphanumeric and special characters within a length of 255 characters. 

Apart from default fields, Zoho CRM allows you to create custom fields. Knowing about the field types is essential to pick the right kind of field type for your custom field. For instance, a 'phone' field type would be more appropriate for a custom-field that stores phone numbers than 'single line' type, since phone allows only numeric characters and '+' (to add extensions).

You can find the details about data types and restrictions about each field type in 'modules and fields' section in Zoho CRM UI. Through API, you can get the data type of the fields in a module using meta data API

URL

​​​{{api-domain-URL}}/crm/v2/settings?fields?module={module_API_name}


The following table gives you specific details about each field type in Zoho CRM and their limitations. 
The JSON type and the data type of the field-types are extracted from fields meta data API. 

JSON type - tells in what format the field should be passed in request-body/ will be received in response
data type - tells the type of data that can be stored in a field with that particular field-type


Field-type
Limitations
Example
Single Line
JSON type - string
data type - text
Accepts up to 255 characters.

Accepts alphanumeric and special characters.
"Last_name": "Mike O'Leary"


Multi-Line
JSON type - string
data type - textarea


Small - accepts up to 2000 characters.

Large - accepts up to 32000 characters.


You will not be able to use this field to create custom views, reports or other filters.



Accepts alphanumeric and special characters.




"Description": "This is a sample description"


Email
JSON type - string
data type - email


Accepts valid email IDs.

"Email": "merced@zylker.com"


Phone
JSON type - string
data type - phone


Accepts up to 30 characters. This limit may vary based on the value configured in 'Number of characters allowed' in the properties pop-up of the field, in UI.

Accepts only numeric characters and '+' (to add extensions).

"Phone": "9800000099"


Picklist
JSON type - string
data type - picklist


You can either pass an existing pick list value or add a new one. 


The pick list value accepts all alphanumeric and special characters.

"Industry": "automobile"


Multiselect pick list
JSON type - jsonarray
data type - multiselectpicklist


You can either pass existing pick list values or add a new one.


The pick list value accepts all alphanumeric and special characters.


"Courses opted": [
                               "Analytics", 
                                "Big data"
                                           ]



Date
JSON type - string 
data type - date


Accepts date in yyyy-MM-dd format.

"Date": "2019-08-28"


Date/time
JSON type - string
data type - datetime



Accepts date and time in yyyy-MM-ddTHH:mm:ss±HH:mm
ISO 8601 format.


"Date_Time": "2019-08-28T20:32:36+05:30"


Number
JSON type - integer
data type - integer


Accepts numbers up to 9 digits. This limit may vary based on the value configured in 'Maximum digits allowed' in the properties pop-up of the field, in UI.

Accepts only numeric values.

"No. of employees": "350"


Currency
JSON type - double
data type - currency


Before decimal point - accepts numbers up to 16 digits.  This limit may vary based on the value configured in 'Maximum digits allowed' in the properties pop-up of the field, in UI.


After decimal point - accepts precision up to 9 digits. This limit may vary based on the value configured in 'Number of decimal paces' in the properties pop-up of the field, in UI.

Accepts only numeric values.

"Annual Revenue": 250000.90


Decimal
JSON type - double
data type - double


Before decimal point - accepts numbers up to 16 digits. This limit may vary based on the value configured in 'Maximum digits allowed' in the properties pop-up of the field, in UI.


After decimal point - accepts precision up to 9 digits. This limit may vary based on the value configured in 'Number of decimal places' in the properties pop-up of the field, in UI.

Accepts only numeric values.

"Decimal_1": 250000.50


Percent
JSON type - double
data type - double


Accepts numbers up to 5 digits.

Accepts only numeric values.

"Percentage": 25


Long integer
JSON type - string
data type - bigint


Accepts numbers up to 18 digits. This limit may vary based on the value configured in 'Maximum digits allowed' in the properties pop-up of the field, in UI.


Accepts only numeric values.

"EAN_Code":"0012345600012"


Checkbox
JSON type - boolean
data type - boolean


Accepts only Boolean values(true,false).

"Email_Opt_Out": true


URL
JSON type - string
data type - website


Accepts valid URLs.

"URL": "https://www.zylker.com"


Lookup
JSON type - jsonobject
data type - lookup


Accepts unique ID of the record, which you can get through get records API.


"Owner":
  {
  "id":"4150868000000623001"
  }



User
data type - userlookup


This is a default look-up field to users in Zoho CRM.


"User":
  {
  "User_Name":"Patricia Boyle",
  "id":"4150868000000623001"
  }




C. Inserting Records in Zoho CRM

Now that we have covered different field types and details about each field type, let us move on to inserting records in Zoho CRM. 

System-defined mandatory fields for each module

While inserting records there are a few system-defined mandatory fields that you need to mention. Inorder to successfully insert records in Zoho CRM, make sure you enter user-defined mandatory fields too.

The following table gives you information about the system-defined mandatory fields and their field type in Zoho CRM:

Module
System-defined mandatory field
Leads
"Last_Name" - Single Line
Contacts
"Last_Name" - Single Line
Accounts
"Account_Name" - Single Line
Deals
"Deal_Name"- Single Line
"Stage" - Picklist
Tasks
"Subject" - Multi Line
Calls
"Subject" - Multi Line
"Call_Type" - Picklist
"Call_Start_Time" - Date/Time
"Call_Duration" - Single Line
Events
"Event_Title"- Single Line
"Start_DateTime" - Date/Time
"End_DateTime" - Date/Time
Products
"Product_Name" - Single Line
Quotes
"Subject"- Single Line
"Product_Details" - Product Line Item
Invoices
"Subject"- Single Line
"Product_Details" - Product Line Item
Campaigns
"Campaign_Name" - Single Line 
Vendors
"Vendor_Name"- Single Line
Price Books
"Price_Book_Name"- Single Line
"Pricing_Details"- JSON Array with "from_range", "to_range", "discount"
Cases
"Case_Origin" - Picklist
"Status"- Picklist
"Subject" - Single Line
Solutions
"Solution_Title"- Single Line
Purchase Orders
"Subject"- Single Line
"Vendor_Name"- Lookup
"Product_Details" - Product Line Item
Sales Orders
"Subject"-  Single Line
"Product_Details" - Product Line Item 


d. A few use-cases on inserting records in Zoho CRM

A few special cases while inserting records in Zoho CRM are as follows:

  • Product Line Item
  • Reminder
  • Repeat
  • Pricing_Details
  • What_ID, Who_ID
  • Participants

Every Zoho CRM API request body to insert, update, or upsert records should be given in the JSON format. To know the format for each of the above mentioned special cases, refer to our API guide.


Next 'Kaizen' - OAuth2.0 and Self Client #API





















    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





                                                          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

                                                                                                            • Bug tracking

                                                                                                              Hi, does anyone know how to track errors during picking or packing? This way I can keep track and see how to improve and prevent errors in this area.
                                                                                                            • Not Receiving Incoming Mail

                                                                                                              I can send emails from my account but I do not receive any. I originally set up forwarding and it worked for a while and then stopped. I turned off forwarding and now do not receive any emails. Could you please check what is causing this issue? Thank you
                                                                                                            • Flow - Fetch info from drop down in another module

                                                                                                              I am running into a road block which I thought would be a simple task. My goal - The account is assigned to a "route" which can be selected from a drop down menu and adds a tag to the account accordingly (easy enough). Now when I create a task for this
                                                                                                            • Migration of corporate mail environment from Yandex 360 to Zoho mail

                                                                                                              I have to migrate a corporate mail environment with an existing domain from Yandex 360 to Zoho mail. It is vital to migrate all users with all the data. I have read the article on this topic using MacMister Email Backup Software just now and have some
                                                                                                            • I'm unable to send mail pthrough Zoho SMTP programmatically

                                                                                                              This has been working for years, but today it's been offline all day long. I see nothing anywhere on your site about this. I'm not the only one experiencing this. Downdetector has a spike of reports today
                                                                                                            • Can no longer send email via Django site

                                                                                                              This was working fine as of 11/7/25. Now I am unable to send user verification emails from a Django site on a AWS lightsail sever. When a user attempts to register the following error occurs. I have also attempted to send a test email via the shell and
                                                                                                            • unable to send email but able to receive email

                                                                                                              my email address is info@securityforceservices.ca
                                                                                                            • Custom Field for Subscription

                                                                                                              Hi, I can't find a way to add a custom field (to contain a license key generated from our software) against a subscription? Is the only place to add this information in the Invoice module (as custom field for invoice)? When a customer views his subscription via the customer portal, there appears no way to display a license key for them? The invoice is not the natural place to store a license key for a particular subscription, so where else can this be stored and displayed?
                                                                                                            • Login to server failing

                                                                                                              When trying to retrieve my mail, I am getting this error message -- Login to server pop.zoho.com with username (my email address) failed. It gives me the option to retry, enter password, or cancel. Then I get this message -- Sending of username did not
                                                                                                            • Configuration failed: 200 response not received for POST request.

                                                                                                              Hello, I am trying to set up a webhook to connect with an Salesforce but I receive the following error from Zoho: Configuration failed: 200 response not received for POST request I have tried testing it on webhook.site as well and receive the same error
                                                                                                            • Zoho Migration Assistant not working

                                                                                                              Hello, I am trying to use you Migration assistant to migrate emails from Rediff to Zoho. I am stuck in the first step. After downloading the migration tool, I copied the link to verify user credentials, however, after pasting the link in the browser,
                                                                                                            • Paid Support Plans with Automated Billing

                                                                                                              We (like many others, I'm sure) are designing or have paid support plans. Our design involves a given number of support hours in each plan. Here are my questions: 1) Are there any plans to add time-based plans in the Zoho Desk Support Plans feature? The
                                                                                                            • Scheduled Reports - Do not send empty report

                                                                                                              Hello, We are intensively using reports in the CRM, especially for sales managers.  When data is empty, they still receive an email. Can you add an option to avoid sending the report when data is empty?
                                                                                                            • Mark As Read Sync?

                                                                                                              So I set up Zohomail to use my personal gmail account in it as well. I was wondering, when I mark the gmail email as read in Zohomail, can it automatically mark it as read in my gmail account as well?
                                                                                                            • Contacts Missing — PeopleSync/Zoho Mail

                                                                                                              English: In our company we use ManageEngine Mobile Device Manager (MDM), Free edition, to manage corporate mobile devices. Our usage policy does not allow personal Google accounts on these devices; therefore, Google account sync is blocked through MDM.
                                                                                                            • Best way to integrate Zoho with mobile app for managing customer requests with real-time notifications?

                                                                                                              Hello, I'm building a solution for a travel company where customers submit requests through a website, and the sales team manages these requests through a mobile app. The Requirement: Customers fill a form on the website (name, email, number of children,
                                                                                                            • Kaizen #57 - Mass Update API in Zoho CRM

                                                                                                              Hello everyone! Welcome back to yet another post in the Kaizen series. This week, we will discuss the Mass Update API in Zoho CRM. In this post, we will cover the following: 1. Introduction 2. Mass Update Records API  3. Schedule Update and Get Status
                                                                                                            • Getting Attachments in Zoho Desk via API

                                                                                                              Is there a way to get attachments into Zoho Desk via an API?      We have a process by which a zoho survey gets sent to the user as a link in a notification.    The survey has several upload fields where they can upload pdf documents.    I've created
                                                                                                            • Multiple currencies - doesn’t seem to work for site visitors / customers

                                                                                                              I am trying to understand how the multiple currency feature works from the perspective of the website visitor who is shopping on my Zoho Commerce site. My site’s base currency is US Dollars (USD) but my store is for customers in Costa Rica and I would
                                                                                                            • Pincode based Product Restriction

                                                                                                              we have different types of products. 1) Very bulky items like plywood. 2) Too delicate items like glass These type of products we want to sell to local customers. Other products we want to supply all over India. There should be an option to restrict products
                                                                                                            • Can multiple agents be assigned to one ticket on purpose?

                                                                                                              Is it possible to assign one ticket to two or more agents at a time? I would like the option to have multiple people working on one ticket so that the same ticket is viewable for those agents on their list of pending tickets. Is something like this currently
                                                                                                            • 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
                                                                                                            • Related Lists filter

                                                                                                              I have Contacts showing in our Accounts module. I customized the Contacts module with an Employment Status field, with the following picklist options: "Primary Contact", "Secondary Contact", "Active Staff(not a main contact)", and "No longer employed".
                                                                                                            • Stock count by bin location

                                                                                                              Is there a configuration to make a stock count by bin or area and not by product. these is useful to manage count by area Regards
                                                                                                            • Text/SMS With Zoho Desk

                                                                                                              Hi Guys- Considering using SMS to get faster responses from customers that we are helping.  Have a bunch of questions; 1) Which provider is better ClickaTell or Screen Magic.  Screen Magic seems easier to setup, but appears to be 2x as expensive for United States.  I cannot find the sender id for Clickatell to even complete the configuration. 2) Can customer's reply to text messages?  If so are responses linked back to the zoho ticket?  If not, how are you handling this, a simple "DO NOT REPLY" as
                                                                                                            • Standalone custom function not generating logs

                                                                                                              Why dont't standalone custom functions generate logs when the're called from another function? I have some functions (workflow, buttons and blueprint) that have common parts, so I put that part in a standalone function which is called from the others.
                                                                                                            • Automated log-out/session end

                                                                                                              I'm concerned about security of our data. Is it possible to set an automatic time-out for user sessions on Zoho CRM, after a certain period of inactivity or when the session reaches a certain duration (12 hours perhaps)? 
                                                                                                            • Add "Reset MFA" Option for Zoho Creator Client Portal Users

                                                                                                              Hello Zoho Creator Team, We hope you are doing well. We would like to request an important enhancement related to Multi-Factor Authentication (MFA) for client portal users in Zoho Creator. Currently, Creator allows us to enforce MFA for portal users,
                                                                                                            • Support Bots and Automations in External Channels

                                                                                                              Hello Zoho Cliq Team, How are you? We actively use Zoho Cliq for collaboration, including with our external developers. For this purpose, external channels are a key tool since they work seamlessly within the same interface as all of our other channels
                                                                                                            • Urgent Security Feature Request – Add MFA to Zoho Projects Client Portal Hello Zoho Projects Team,

                                                                                                              Hello Zoho Projects Team, We hope you are doing well. We would like to submit an urgent security enhancement request regarding the Zoho Projects Client Portal. At this time, as far as we are aware, there is no Multi-Factor Authentication (MFA) available
                                                                                                            • Creator HTML page refresh

                                                                                                              Hi, I have added around 5 different html snippets in single creator page. I understand, I can refresh the entire page from page script using Navigational URLs https://help.zoho.com/portal/en/kb/creator/developer-guide/others/url-patterns/articles/navigational-urls
                                                                                                            • Zoho Desk - Custom Module Related List Columns on Tickets

                                                                                                              I have a custom module in Zoho Desk called Asana Tasks, each task has a lookup to a Ticket. On the Ticket I want to see the columns of the Asana Tasks in the related list . Is there a way to do this? Right now it just has the name of the record and I
                                                                                                            • Why is Zoho Meeting quality so poor?

                                                                                                              I've just moved from Office 365 to Zoho Workplace and have been generally really positive about the new platform -- nicely integrated, nice GUI, good and easy-to-understand control and customisation, and at a reasonable price. However, what is going on
                                                                                                            • Google Analytics import data inaccurate (as of October 11, 2025)

                                                                                                              We have Zoho Analytics connected to GA4 to import daily event data. This has been running without issue for a couple of years. However, a month ago we started noticing discrepancies. All data until October 10 lines up perfectly - October 11 onward is
                                                                                                            • What is your opinion of the new UI?

                                                                                                              Hi Everyone, I would like to see what everyone thinks of the new Zoho One Dashboard. I don't get it, but perhaps I'm missing something. What are your thoughts?
                                                                                                            • What are the OAuth scopes needed to access the Zoho MCP server?

                                                                                                              I think I'm authenticating with the MCP server endpoint successfully using a bearer token but I can't successfully initialize an MCP session. I'm using the official MCP Python sdk (https://github.com/modelcontextprotocol/python-sdk). I get as far as here
                                                                                                            • Support Uploading YouTube Videos Longer Than 60 Minutes

                                                                                                              Hi Zoho Social Team, How are you? We would like to request support for uploading YouTube videos longer than 60 minutes directly through Zoho Social. Your support team informed us that Zoho Social currently cannot upload videos over 60 minutes due to “API
                                                                                                            • Account blocked for IMAP use

                                                                                                              Hello, My email client (Evolution) can't sync mail anymore. It gives the error: "Your account is temporarily blocked for IMAP use. This may happen if you exceed the maximum number of simultaneous IMAP connections allowed. Kindly try again after some time."
                                                                                                            • Is SMTP included in the free plan?

                                                                                                              My client has a Zoho Mail Free 14 day trial that ends tomorrow. She has set up a domain email address with SMTP on a third party app and is wondering if it will continue working once her plan downgrades to the free forever plan. Thanks
                                                                                                            • Zoho mail issue.

                                                                                                              I have verified my domain ohhoexpress.online by adding necessary TXT and MX records. But when I am sending email to any external email id, it is showing as zohomail.com. Also while I am sending mail to internal mail id, it is saying user not found whereas
                                                                                                            • Next Page