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

        All-in-one knowledge management and training platform for your employees and customers.






                              Zoho Developer Community




                                                    • Desk Community Learning Series


                                                    • Digest


                                                    • Functions


                                                    • Meetups


                                                    • Kbase


                                                    • Resources


                                                    • Glossary


                                                    • Desk Marketplace


                                                    • MVP Corner


                                                    • Word of the Day


                                                    • Ask the Experts



                                                              • 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


                                                              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

                                                                                                                • Placeholder format in Number field does not reflect Max Digits configuration

                                                                                                                  When the Max Digits (Maximum digits of number) property is set to a smaller value (for example, 2 digits), the placeholder in the input field still displays a 7-digit format (#######). The same behavior can also be observed in Decimal and Currency field
                                                                                                                • How does SKU work when selling products in parts in Zoho Inventory

                                                                                                                  Hello everyone, Zoho Inventory does not understand the physical cutting of the piece.. It only tracks quantities of the unit (like feet ). So when you sell part of an item, the system simply reduces quantity for that SKU. Assume that i have a 50 ft long
                                                                                                                • Ability to Attach Record-Specific Files Automatically in Workflow Email Templates

                                                                                                                  Currently in Zoho CRM, email templates allow attachments to be added, but these attachments are static and remain the same for every recipient. There is no straightforward option to automatically attach a file that is stored within the specific CRM record
                                                                                                                • CRM Cadences - working timesThe Friday afternoon? The next Monday morning? Not at all?

                                                                                                                  I think I’m writing saying that cadence emails are only sent during the organisations set working hours in CRM. So if a particular email is set to send for example in three days and that lands on a Sunday (when working hours are not operational) when
                                                                                                                • CRM Cadences - working times

                                                                                                                  I think I’m right in saying that cadence emails are only sent during the organisations set working hours in CRM. So if a particular email is set to send for example in three days and that lands on a Sunday (when working hours are not operational) when
                                                                                                                • Push Notification for New Bookings in Zoho Bookings App

                                                                                                                  when a someone schedules an appointment through the booking page, is there any option to receive a push notification in the mobile app?
                                                                                                                • Intergrating multi location Square account with Zoho Books

                                                                                                                  Hi, I have one Square account but has multiple locations. I would like to integrate that account and show aggregated sales in zoho books. How can I do that? thanks.
                                                                                                                • Add the same FROM email to multiple department

                                                                                                                  Hi, We have several agents who work with multiple departments and we'd like to be able to select their names on the FROM field (sender), but apparently it's not possible to add a FROM address to multiple departments. Is there any way around this? Thanks.
                                                                                                                • Zoho Desk View Open Tickets and Open Shared Tickets

                                                                                                                  Hi, I would like to create a custom view so that an agent can view all the open tickets he has access to, including the shared tickets created by a different department. Currently my team has to swich between two views (Open Tickets and Shared Open Tickets).
                                                                                                                • Clone Banking Transaction

                                                                                                                  Why is there no option to CLONE a Transaction in the Banking module?? I often clone Expenses (for similar expense transactions each month) so I would also like to clone Income transactions. But there is no option in Banking to clone an existing Income
                                                                                                                • Zoho Expense - Bi-Weekly Report Automation

                                                                                                                  Hi Zoho Expense Team, My feature request is to please include an option to automate creation of reports bi-weekly (every 2 weeks)
                                                                                                                • Application Architecture in Zoho Creator: Why You Should Think About It from the Start

                                                                                                                  Many companies begin using Zoho Creator by building simple forms to automate internal processes. This is natural — the platform is extremely accessible and allows applications to be built very quickly. The challenge begins to appear when the application
                                                                                                                • Arquitetura de Aplicações no Zoho Creator: Por que pensar nisso desde o início

                                                                                                                  Muitas empresas começam a utilizar o Zoho Creator criando formulários simples para automatizar processos internos. Isso é natural — a plataforma é extremamente acessível e permite construir aplicações rapidamente. O problema começa a aparecer quando a
                                                                                                                • Dark Mode - Font Colors Don't Work

                                                                                                                  When editing a document in Dark Mode and selecting font colors, they don't show up on screen.  Viewing/editing the same document in Light Mode shows them just fine.
                                                                                                                • How to Customize & Reorder Spaces in Zoho One 25 (Spaces UI) — Admin Tips Not in the Docs

                                                                                                                  Hey Zoho Community, After digging around in the new Spaces UI, I found a couple of admin features that aren't well documented yet but are really useful. Sharing here in case others are looking for the same things. 🔁 How to Change the Default Space Users
                                                                                                                • System Components menu not available for Tablet to select language

                                                                                                                  I have attached a screenshot of my desktop, mobile, and tablet menu builder options. I am using 2 languages in my application. Language Selection is an option under the System Components part of the menu, but only for my desktop and phone(mobile). My
                                                                                                                • Approvals in Zoho Creator

                                                                                                                  Hi, This is Surya, in one of  my creator application I have a form called job posting, and I created an approval process for that form. When a user submits that form the record directly adding to that form's report, even it is in the review for approval.
                                                                                                                • How Zoho Desk contributes to the art of savings

                                                                                                                  Remember the first time your grandmother gave you cash for a birthday or New Year's gift, Christmas gift, or any special day? You probably tucked that money safely into a piggy bank, waiting for the day you could buy something precious or something you
                                                                                                                • Estimate PDF Templates - logo too large

                                                                                                                  Hello, I cloned a standard estimate template, but my logo is showing up much larger than intended. This doesn’t happen with the standard invoice template, where the logo displays correctly. How can I adjust the logo size in the estimate template? Thank
                                                                                                                • Select CRM Custom Module in Zoho Creator

                                                                                                                  I have a custom module added in Zoho CRM that I would like to link in Zoho creator.  When I add the Zoho CRM field it does not show the new module.  Is this possible?  Do i need to change something in CRM to make it accesible in Creator?
                                                                                                                • Invoice emails not sending but reminders are

                                                                                                                  I am a new user. I have been creating some dummy invoices before I go live and have struck a block. Emails for the invoice are not being recieved by the recipient, however, when I send a reminder for the same invoice the email is sent. NOTE: I have checked
                                                                                                                • Deleted account recovery

                                                                                                                  I ended up accidentally deleting our Zoho invoice account while trying to work something out. Emailed support for recovery and restoration of the deleted account, if possible, but they responded by saying they can't find an account associated with that
                                                                                                                • Devis et factures multipage coupées

                                                                                                                  Bonjour, je suis sur Zoho invoice et je rencontre un problème sur mes devis et factures lorsqu'ils dépassent 1 page. je me retrouve souvent avec des lignes coupées ou le sous total page 1 et le total page 2. j'aimerai savoir s'il existe une possibilité
                                                                                                                • Custom Related List Inside Zoho Books

                                                                                                                  Hello, We can create the Related list inside the zoho books by the deluge code, I am sharing the reference code Please have a look may be it will help you. //..........Get Org Details organizationID = organization.get("organization_id"); Recordid = cm_g_a_data.get("module_record_id");
                                                                                                                • Zoho Meeting - Feature Request - Introduce an option to use local date and time formating

                                                                                                                  Hi Zoho Meeting Team, My feature request is to add an option for dates to be displayed in the users local format. This is common practice across Zoho applications and particularly relevant to an application like Zoho Meeting which revolves around date
                                                                                                                • Cannot give public access to Html Snippet in Zoho Creator Page

                                                                                                                  Hi, I created a form in Zoho Creator and published it. The permalink works but I want to override the css of the form. (style based URL parameters is not good enough) So I created a page and added an Html snippet. I can now override the css, which is
                                                                                                                • How can Outlook 365 link back into Zoho Projects so meetings and events in Outlook calendar show in Zoho?

                                                                                                                  We use Outlook 365 for our emails and diaries and have integrated Zoho Projects with Office 365. One challenge we face is getting Zoho Projects to recognise when we have meetings and events in Outlook and not allow project managers to assign tasks over that period. Is there a way to resolve this? Thanks
                                                                                                                • On Edit Validation Blueprint

                                                                                                                  Hello, I have a notes field and a signature field. When the Approve button is clicked, the Signature field will appear and must be filled in. When the Reject button is clicked, the Notes field will appear and must be filled in. Question: Blueprint will
                                                                                                                • Zoho Invoice en Navarra (Spain)

                                                                                                                  Hola, ¿Alguien usa Zoho Invoice en la Comunidad Foral de Navarra? En Navarra tenemos un sistema tributario diferente y no aplica Verifactu (la Hacienda Foral de Navarra ha anunciado su alternativa, NaTicket, pero no ha informado cuándo entrará en vigor).
                                                                                                                • Emails from Zoho are getting blocked due to Zoho IP address being blacklisted

                                                                                                                  This is the info I got from my hosting provider – please address this issue immediately. I don’t expect this from such a big household name. Every single invoice I have sernt it not being received by my clients, all being blocked. All of a sudden. As
                                                                                                                • agentid : Where to find?

                                                                                                                  I've been looking around for this agenId to check for the total ticket assigned on a specific agent url :"https://desk.zoho.com/api/v1/ticketsCountByFieldValues?departmentId=351081000000155331&agentId=35108xxxxxx132009&field=statusType,status" type :GET
                                                                                                                • Zoho DataPrep integration with OpenAI (beta)

                                                                                                                  We are thrilled to announce Zoho DataPrep's integration with OpenAI. The public beta roll-out opens up three features. Users who configure their OpenAI Organizational ID and ChatGPT API key (Find out how) will be able access the features. The features
                                                                                                                • AI Bot and Advanced Automation for WhatsApp

                                                                                                                  Most small businesses "live" on WhatsApp, and while Bigin’s current integration is helpful, users need more automation to keep up with volume. We are requesting features based on our customer Feedbacks AI Bot: For auto-replying to FAQs. Keyword Triggers:
                                                                                                                • Setting total budget hours for a specific project

                                                                                                                  Hi there, I work on a lot of projects that have fixed budget hours. Is there a way to enter the total budgeted hours so i can track progress and identify when hours have been exceeded. I see in the projects dashboard there is a greyed out text saying
                                                                                                                • Clone entire dashboards

                                                                                                                  If users want to customize a dashboard that is used by other team members, they can't clone it in order to customize the copy. Instead they have to create the same dashboard again manually from scratch. Suggestion: Let users copy the entire dashboard
                                                                                                                • Introducing Formula Fields for performing dynamic calculations

                                                                                                                  Greetings, With the Formula Field, you can generate numerical calculations using provided functions and available fields, enabling you to derive dynamic data. You can utilize mathematical formulas to populate results based on the provided inputs. This
                                                                                                                • Getting started with Zoho PDF Editor

                                                                                                                  Hello users, If you are new to Zoho PDF Editor or aren't sure of its full potential, then this article is for you. Zoho PDF Editor is a free online PDF editing tool, that allows you to upload and edit PDFs, insert text and images, add fillable and e-signature
                                                                                                                • Zoho Projects - Cloning a task does not trigger task workflow when created

                                                                                                                  Hello! I have a Project where my team uses a set of tasks from a tasklist as templates, so we could simply clone it and drag it to another list in kanban view to avoid creating a new one from scratch. The process works well, but after cloning it the new
                                                                                                                • Purchase Orders not in sequence

                                                                                                                  I am unable to sort by Purchase Order Numbers. I can only sort by date; however, the PO numbers aren't in the order they were entered. This was not the case prior to today.
                                                                                                                • Internal Fillable Contract with Zoho Writer (Before Sending to Client)

                                                                                                                  Hi everyone, I’m trying to automate the following process in Zoho CRM and would appreciate some guidance. Process: When a Deal moves to a specific stage, CRM triggers an automation. CRM sends a contract template to an internal team member so they can
                                                                                                                • Next Page