Kaizen #195: Frequently Asked Questions on Bulk Read API and Bulk Write API

Kaizen #195: Frequently Asked Questions on Bulk Read API and Bulk Write API

🎊 Nearing 200th Kaizen Post – We want to hear from you!
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. 

Hello all!!
Welcome back to another post in the Kaizen series!

In this post, we will address some of the most frequently asked questions about Zoho CRM's Bulk Read API and Bulk Write API from the Zoho CRM Developer Community Forum.

 Frequently Asked Questions on Bulk Read API 

1. What is the Bulk Read API, and when should I use it?

Bulk Read refers to bulk data export. This API allows you to export large datasets i.e., you can export up to 2,00,000 records in a single export job from Zoho CRM in CSV format. Bulk Read APIs are best suited for backups and data migration.

2. Since Zoho CRM has other record APIs such as GET Records API, COQL API, and Search API to retrieve data, why should I use the Bulk Read API? 

Other record APIs like the GET Records API, COQL API, and Search API are used to retrieve data, but they return fewer records per API call. This can quickly lead to reaching your daily API limits, unlike the Bulk Read API, which can be used to export larger datasets.
  • GET Records API : You can fetch up to 200 records per API call. Use pagination to retrieve up to 1,00,000 records from a module.
  • COQL API : You can fetch up to 2000 records per API call. Using LIMIT and OFFSET, you can fetch up to 100,000 records. To get beyond 100,000 records, refer to Pagination section of the API help documentation. Also, it supports cross-module queries.
  • Search API : You can fetch up to 200 records per call. With pagination, you can retrieve up to 2,000 records in total. Using this API, you can search for records in a module based on a criteria that you define. 
  • Advantages of Bulk Read API
    • You can export up to 2,00,000 records per API call.
    • Use the page_token to export the next set of 2,00,000 records until all records are fetched.

3. How do I make a Bulk Read API call?

The process involves three steps:
  • Create a Bulk Read Job : Make a POST call with the required details, including module, fields, and filter criteria. For a successful API call, you will receive a unique job_id in the response. 
  • Check Job Status : Use the job_id to poll for status of the Bulk Read API. You can also set up a callback URL for notifications, where you will be notified when the Bulk Read job is complete.
  • Download Results : Once the Bulk Read job is complete, you will get the download_url in the response of the Get Status API. Use this download URL to download the ZIP file containing the CSV or ICS files. 

4. What are the supported and unsupported modules in the Bulk Read API?

Supported modules :
leads, accounts, contacts, deals, campaigns, tasks, cases, events, calls, solutions, products, vendors, price books, quotes, sales orders, purchase orders, invoices, subforms, linking module, and custom modules.

Unsupported modules :
Modules that appear as related lists in a record like Emails and Attachments are treated as separate modules in Zoho CRM. The Bulk Read API does not support these related list modules.

5. How can I export subform records in a module using the Bulk Read API?

To export subform records using the Bulk Read API, specify the subform’s API name in your request. 

Request Method: POST
Sample Request:


{
    "callback": {
        "method": "post"
    },
    "query": {
        "module": {
            "api_name": "Project_Details"
        }
    },
    "file_type": "csv"
}

Note: In the above example, the Project_Details is the API name of the subform to be exported. 

Exporting subform records based on criteria


  {
    "query": {
        "module": {
            "api_name": "Project_Details"
        },
        "fields": [
            "Project_Name",
            "Project_Type",
            "Expected_Budget",
            "Status"
        ],
        "criteria": {
            "field": {
                "api_name": "Expected_Budget"
            },
            "comparator": "greater_equal",
            "value": "40000" //Retrieving subform records with an expected budget greater than or equal to $40,000
        }
    }
}


For more details on subforms, refer to Kaizen #124 - Manipulating Subform using Zoho CRM APIs

6. How can I export multi-select lookup (MxN) records in a module using the Bulk Read API?

Specify the API name of the linking module in your request to export records from a multi-select lookup (MxN) field.

Request Method: POST
Sample Request:


{
    "callback": {
        "method": "post"
    },
    "query": {
        "module": {
            "api_name": "EmpXSkills"
        },
        "fields": [
            "Employees.Name",
            "Employees.Year_of_Experience",
            "Skills.Name"
        ],
        "criteria": {
            "group": [
                {
                    "field": {
                        "api_name": "Employees.Year_of_Experience" 
                    },
                    "comparator": "greater_than",
                    "value": "4"
                },
                {
                    "field": {
                        "api_name": "Skills.Name"
                    },
                    "comparator": "contains",
                    "value": "Social"
                }
            ],
            "group_operator": "AND"
        }
    }
}


In the sample, EmpXSkills is the API name of the linking module.

7. How can I export multi-module lookup field's data in a module using the Bulk Read API?

The Appointments module has a multi-module lookup field called Appointment_For. To export data that includes this field, specify the API name of the Appointments module in the module key of your Bulk Read API request.

Request Method: POST
Sample Request: 


{
    "callback": {
        "method": "post"
    },
    "query": {
        "module": {
            "api_name": "Appointments__s" //API name of the Appointments module
        }
      
    },
    "file_type": "csv"
}

Note: The Appointment_For field cannot be used in the criteria. 


8. What are the field limits for a Bulk Read API request?

You can specify up to 200 fields per request. If the limit is exceeded, the API returns all fields in the module by default.

9. What are the criteria limits for the Bulk Read API in Zoho CRM?

The Bulk Read API supports a maximum of 25 criteria per query, including the criteria defined in custom views. Make sure your filter conditions do not exceed this limit to avoid errors during query execution.
Request Method: POST
Sample Request:


{
    "callback": {
        "method": "post"
    },
    "query": {
        "module": {
            "api_name": "Contacts"
        },
        "fields": [
            "Last_Name",
            "Owner",
            "Lead_Source",
            "Created_Time"
        ],
        "criteria": {
            "group_operator": "and",
            "group": [
                {
                    "field": {
                        "api_name": "Lead_Source"
                    },
                    "comparator": "equal",
                    "value": "Advertisement"
                },
                {
                    "field": {
                        "api_name": "Owner"
                    },
                    "comparator": "equal",
                    "value": "Boyle"
                },
            .
            .
            .
             // Add more criteria objects here, up to 25 total
            ]
        }
    }
}


10. How do I fetch data from lookup fields using the Bulk Read API?

To fetch data from lookup fields, use the dot (.) operator. Refer to the following Sample Request for reference.
Request Method: POST
Sample Request:



{
    "callback": {
        "method": "post"
    },
    "query": {
        "module": {
            "api_name": "Contacts"
        },
        "fields": [
            "Last_Name",
            "Owner",
            "Owner.last_name",
            "Account_Name.Account_Name", //account lookup field 
            "Account_Name.Phone",
            "Lead_Source"
        ],
        "criteria": {
            "group_operator": "or",
            "group": [
                {
                    "field": {
                        "api_name": "Lead_Source"
                    },
                    "comparator": "equal",
                    "value": "Advertisement"
                },
                {
                    "field": {
                        "api_name": "Owner.last_name" //owner lookup field in the Contacts 
                    },
                    "comparator": "equal",
                    "value": "Boyle"
                },
                {
                    "field": {
                        "api_name": "Account_Name.Phone" //account lookup field in the Contacts 
                    },
                    "comparator": "contains",
                    "value": "99807"
                }
            ]
        }
    }
}


11. Why do I get a "RESOURCE_NOT_FOUND" error when checking the status of a Bulk Read job?



{
    "status": "error",
    "code": "RESOURCE_NOT_FOUND",
    "message": "The requested resource doesn't exist.",
    "details": {
        "resource": "5725767000006841003"
    }
}




The "RESOURCE_NOT_FOUND" will be thrown for the following three reasons.

  • API version mismatch : If there is a version mismatch between the API used to create the job and the API used to fetch its status. For example, if you create a Bulk Read job using v6 and then try to check the job status using v8, you will get the "RESOURCE_NOT_FOUND" error. Always use the same API version consistently for all operations related to a Bulk Read job, from creation to status check to file download. Double-check the version in your request URL before making API calls.
  • Job ID expiration : If you pass an expired job ID, the system will return this error.
  • Invalid job ID : If you pass an incorrect job ID in the job_id key, the system will return this error.

12. What file formats are supported?

The data is returned as a ZIP file containing either a CSV or ICS file upon job completion. You can download the file from the URL provided in the response of the Status API call.
  • CSV: Default format for all modules.   
  • ICS: Available only for the Events module.

13. How long are the exported files available for download?

The download_url is valid for one day after job completion. After that, the file is inaccessible.

14. How to handle large datasets beyond the record limit?

Use the page key to paginate the export of large datasets. The maximum possible value of page key is 500.

For example, 
  • page=1 retrieves records 1 to 200,000
  • page=2 retrieves records 200,001 to 400,000
If the more_records key is true in the response of Get the Status of the Bulk Read Job API, it indicates that there are more records available to fetch. In such a case, use pagination and make more Bulk Read API calls to retrieve them. 

Request Method: GET
Sample Response:

{
    "data": [
        {
            "id": "3652397000000646004",
            "operation": "read",
            "state": "COMPLETED",
            "result": {
                "page": 1,
                "per_page": 200000,
                "count": 200000,
                "download_url": "/crm/bulk/v8/read/2276164000001136017/result",
                "more_records": true,
                "next_page_token": "bca6fba106357ae3b1ecbd63f"
            },
            "query": {
                "module": {
                    "id": "2276164000000000125",
                    "api_name": "Contacts"
                },
                "page": 1
            },
            "created_by": {
                "id": "2276164000000471001",
                "name": "Patricia"
            },
            "file_type": "csv"
        }
    ]
}


Use the page_token key to get the next set of records. You can find the value for page_token in the next_page_token field of the response from your Get Bulk Read Job Status API call. 

Now, again, use the POST - Bulk Read API with this token to fetch the next batch of records.
Request Method: POST
Sample Request: 

{
    "query": {
        "page_token": "bca6fba106357ae3b1ecbd63f"
    }
}


15. What are the download rate limits for the Bulk Read API?

A maximum of 10 download requests are allowed per minute. If this limit is exceeded, the server returns an HTTP 429 (Too Many Requests) error.

16. Is it possible to export records based on a custom view?

Yes, the Bulk Read API supports exporting records based on a custom view by specifying the CVID in your request. Refer to the Bulk Read API documentation for details.

17. Does the Bulk Read API preserve the order of fields in the response?

The Bulk Read API does not follow a specific order for fields in the response when all fields from a module are requested. However, if you specify a set of fields using the fields JSON array, the response will maintain the same order as provided.

18. Is it possible to schedule multiple Bulk Read jobs?

Yes, you can schedule multiple Bulk Read jobs simultaneously.

19. Is it possible to cancel a Bulk Read request after it is initiated?

No, once a Bulk Read request is initiated, it cannot be cancelled.

20. Do the download URLs require any kind of authentication? Or can anyone access them?

Yes, authentication is required to access download URLs.
  • Admin users can download the results of all Bulk Read jobs.
  • Non-admin users can only download their own Bulk Read jobs.

21. How many records can be exported from the Events module in ICS format per API call?

The ICS format is supported only for the Events module. You can export up to 20,000 records in ICS format from the Events module in a single API call.

Frequently Asked Questions on Bulk Write API

1. What is the Bulk Write API and what operations does it support?

The Bulk Write API allows you to insert, update, or upsert large sets of data (up to 25,000 records) asynchronously in Zoho CRM. 

It supports three main operations:
  • Insert: Create new records
  • Update: Modify existing records 
  • Upsert: Update existing records or create new ones if no matching record exists.

2. What file formats are supported for bulk operations?

The Bulk Write API accepts one ZIP file containing CSV files.
  • To import records into modules such as Deals and Accounts,i.e, to import records only to the parent modules, the ZIP file should contain only one CSV file. For example, if you want to import 50,000 records into the Leads module, you need to make two CSV files (25,000 records each), compress each CSV file into a separate ZIP file, and make two separate Bulk Write API requests.
  • To import parent and child records (subform or linking module) in a single API call, the ZIP can include multiple CSV files - one for the parent module and others for the child modules. For more details on handling parent-child records, refer to Kaizen #131 - Bulk Write for parent-child records using Scala SDK.
  • The maximum allowed size of the ZIP file is 25 MB.

3. What are the key points to keep in mind while preparing a CSV file for the Bulk Write API?

  • Maximum of 25,000 records per file
  • Maximum of 200 column headers
  • Supported delimiters: comma (,), semicolon (;), colon (:), or pipe (|)
  • All records must belong to the same module
Things to note with the header row 
  • If field mapping is not provided in the API request, then the first row must contain CRM field API names. This enables automatic mapping by the system.
  • If field mapping is provided explicitly in the API request, then the first row can contain any name like display_label. In this case, the first row will be discarded by the system, and it will rely only on the field mapping in the API request.
Recommended way to create a ZIP file for Bulk Write API

It is recommended to create the ZIP file from the terminal. When you zip files through UI (right-click -> Compress), hidden files like __MACOSX may be added to the zip file, which can cause upload errors.
 
Example : 

zip bulk_data.zip parent.csv -> zip test.zip test.csv


Field mapping is
  • Optional for single-module bulk jobs.
  • Mandatory for parent-child module jobs.

4. What are the mandatory headers to include while making a Bulk Write job?

        

                            Header

 

                             Value

Authorization

Zoho-oauthtoken {access_token}

Content-Type

multipart/form-data

X-CRM-ORG {org_id}  Use the Organization API to get your org ID.

123456789

feature

bulk-write 


5. Why am I getting the "403 Invalid Response From Service Team" error while uploading my ZIP file using the Bulk Write API?

Using an incorrect or missing Org ID in the X-CRM-ORG header will result in this 403 error response. Specify a valid Org ID in the header when uploading the ZIP file.  Use the Organization API to get your Org ID.

6. How do I handle lookup fields in my input CSV?

For lookup fields, the column header should follow one of the following formats:

 

Option 1: To reference by ID

 

Option 2: To reference by a field value (like name)

Use the format: field_api_name.id

Example: Account_Name.id

Use the format: field_api_name.field_api_name

Example: Account_Name.Account_Name

7. How do default values work in field mappings for the Bulk Write API?

While mapping fields in your Bulk Write API request, you can set a default_value for any field. This is helpful when the uploaded CSV file does not have a corresponding value for the field, but you want to map a default value to that field in that case. 
Here is a sample field mapping for a picklist field Lead_Source with a default value:

Sample Field Mapping


{
    "api_name": "Lead_Source", // Picklist field
    "index": 2, // Column index in the CSV
    "default_value": { // Optional key with a default value
        "value": "call"
    }
}


If the CSV file has a value in column index 2, that value will be used. If the CSV column is empty for a record, the default_value - call (in our case) will be used instead. 
Please note that the default key is optional. If default_value is not provided and the field is required, records with missing values may fail.

8. How do I handle multi-select picklist fields in the Bulk Write API?

Use semicolons (;) to separate multiple values in the CSV file and in the default value mapping in the request body.
Example in CSV:  "A;B;C"

Sample Field Mapping

{
    "api_name": "Rating",
    "default_value": {
        "value": "A;B"
    }
}

If the CSV does not contain a value for the field, the value specified under default_value will be used.

9. How do I set a default value for a date field in the Bulk Write API? 

When setting a default value for a date field, only the ISO format is allowed. 

Sample Field Mapping


{
 "api_name": "Registered_day",
 "default_value": {
 "value": "2025-03-21"
 }
}

If the CSV column for the date field is empty, the default date in ISO format will be used. 

10. How do I set a default value for a decimal field in the Bulk Write API?

For decimal fields, the default value must be a number using a dot (.) as the decimal separator. Commas (;) are not allowed.

Sample Field Mapping

{
    "api_name": "Decimal",
    "default_value": {
        "value": "99.75"
    }
}

Only numbers with a dot (.) as the decimal separator are supported. Values like "99,75" are invalid and will cause errors.

11. Can I import Subform and MxN (linking module) data using the Bulk Write API?

Yes, the Subform and MxN (linking module) modules are treated as separate modules in Zoho CRM. Like modules such as Leads and Contacts, you can import data into CRM using the Bulk Write API.

For cases such as importing parent-child data, for example, Leads (parent module) and its associated subform records (child module), you must include multiple CSV files - one for the parent and one for the subform within a single ZIP file and upload it in a single Bulk Write request. Also, make sure the field mappings are correct in the input request.
Refer to Kaizen #131 - Bulk Write for parent-child records using Scala SDK for more details on handling parent-child records.

12. Is Multi-module Lookup (MML) supported in the Bulk Write API?

No, Multi-module Lookup (MML) fields are not currently supported in the Bulk Write API.
Currently, in Zoho CRM API Version 8, the Appointment_For field in the Appointments module is an MML field. Since the Appointments module itself is not supported in Bulk Write, importing data into it - including MML fields is not possible using the Bulk Write API.

13. Is it possible to cancel a Bulk Write request after it is initiated?

No, once a Bulk Write request is initiated, it cannot be cancelled. The job will run to completion unless it fails due to an error.

14. Can I schedule multiple Bulk Write jobs simultaneously?

Yes, you can schedule multiple Bulk Write jobs simultaneously. There is no restriction on the number of jobs you can initiate in parallel.

15. Are there any restrictions on the file name for CSV or ZIP files in the Bulk Write API?

No, there are no specific restrictions on the file name. You can name your CSV or ZIP files as needed. For example, leads_data.csv and leads_with_subform.zip.

16. Are Auto Number and Formula field types supported in the Bulk Write API?

No, both Auto Number and Formula fields are not supported in the Bulk Write API.

17. Are External ID fields supported in the Bulk Write API?

Yes, only the Org-based external ID field is supported, and user-based external fields are not supported.

18. What are the unsupported Modules in Bulk Write API?

The Attachments, Notes, Events, Calls, Upload file fields, and Record images are treated as separate modules in Zoho CRM and are not supported by the Bulk Write API. 




                                        x-----------------------------x



We trust that this post meets your needs and is helpful.
Let us know your thoughts in the comment section or reach out to us at support@zohocrm.com


Stay tuned for more insights in our upcoming Kaizen posts!


Other Frequently Asked Questions in Kaizen

    • Sticky Posts

    • 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
    • Kaizen #152 - Client Script Support for the new Canvas Record Forms

      Hello everyone! Have you ever wanted to trigger actions on click of a canvas button, icon, or text mandatory forms in Create/Edit and Clone Pages? Have you ever wanted to control how elements behave on the new Canvas Record Forms? This can be achieved
    • Kaizen #142: How to Navigate to Another Page in Zoho CRM using Client Script

      Hello everyone! Welcome back to another exciting Kaizen post. In this post, let us see how you can you navigate to different Pages using Client Script. In this Kaizen post, Need to Navigate to different Pages Client Script ZDKs related to navigation A.
    • 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
    • Recent Topics

    • The Social Wall: August 2025

      Hello everyone, As summer ends, Zoho Social is gearing up for some exciting, bigger updates lined up for the months ahead. While those are in the works, we rolled out a few handy feature updates in August to keep your social media management running smoothly.
    • The Social Wall: July 2025

      Hello everyone! July has brought some exciting new updates to Zoho Social. From powerful enhancements in the Social Toolkit to new capabilities in the mobile app, we’ve packed this month with features designed to help you level up your social media presence.
    • Use Zoho Creator as a source for merge templates in Zoho Writer

      Hello all! We're excited to share that we've enhanced Zoho Creator's integration with Zoho Writer to make this combination even more powerful. You can now use Zoho Creator as a data source for mail merge templates in Zoho Writer. Making more data from
    • Tagged problem !!!

      Damn it, we're one of dozens of construction companies in Africa, but we can't link purchasing invoices to projects. Why isn't this feature available?
    • Syntax for URLs in HTML Snippets

      What are some best practices for inserting a URL in an HTML snippet? I've looked at Zoho Help articles on navigation-based and functional-based URLs, but I'm still unclear on how to incorporate them in an HTML snippet. For example, 1. How do I link to
    • The Social Wall: June 2025

      Hello everyone, We’re back with June Zoho Social highlights. This month brought some exciting feature updates—especially within the Social Toolkit—to enhance your social media presence. We engaged with several MSME companies through community meet-ups
    • Make panel configuration interface wider

      Hi there, The same way you changed the custom function editor's interface wider, it would be nice to be able to edit panels in pages using the full width of the screen rather than the currently max-width: 1368px. Is there a reason for having the configuration panel not taking the full width? Its impossible at this width to edit panels that have a lot of elements. Please change it to 100% so we can better edit the layouts. Thanks! B.
    • Tip 7: How to fetch data from another application?

      Hi everyone, Following our Zoho Creator - Tips and Tricks series every fortnight, we are back today with a tip based on one of the most popular questions asked in our forum. This tip would help you fetch data from another application(App B) and use it
    • The Social Wall: May 2025

      Hey everyone, We're excited to share some powerful updates for the month of May! Let's take a look! Reply to your Instagram and Facebook comments privately through direct messages Are you tired of cluttered comment threads or exposing customer queries
    • Sub-Form Fields as Filters for Reports

      Hi, I would like to use the Sub-Form Fields as Filters in Reports just like we do for Main Page Fields. Thanks Dan
    • Zoho CRM Formula - Current Time minus Date/Time field

      Hello, I am trying to prevent duplicate emails going to clients when more than 1 deal is being updated. To do this, I would like to create a formula to identify if a date/time field is >= 2 hours ago. Can someone please help me write this formula? Example:
    • Billing Management: #7 Usage Billing in Telecom & Internet Service Provider

      Telecom and Internet Service Providers operate in markets where usage varies drastically from one customer to another. While flexible, usage-based models align revenue directly with consumption, they also introduce operational challenges like real-time
    • Zoho Sprints - Q3 updates for 2025

      The updates for the third quarter of 2025 are out. A few significant features and enhancements have been rolled out to improve user experience and product capabilities. The following are the updates: Manage tags and cluster tags Record and maintain project
    • Kaizen #208 - Answering your Questions | Functions, AI and Extensions

      Hello Developers! Welcome back to a fresh week of Kaizen! We are grateful for your active participation in sharing feedback and queries for our 200th milestone. This week, we will answer the queries related to Functions and Extensions in Zoho CRM. 1.
    • Zoho CRM still doesn't let you manage timezones (yearly reminder)

      This is something I have asked repeatedly. I'll ask once again. Suppose that you work in France. Next month you have a trip to Guatemala. You call a contact there, close a meeting, record that meeting in CRM. On the phone, your contact said: "meet me
    • Creating Restaurant Inventory Management on Zoho

      Hi,  We run a small cloud kitchen and are interested to use Zoho for Inventory and Composite Item tracking for our food served and supplied procured to make food items.  Our model is basically like subway where the customer can choose breads, veggies,
    • To Zoho customers and partners: how do you use Linked Workspaces?

      Hello, I'm exploring how we can set up and use Linked Workspaces and would like to hear from customers and partners about your use cases and experience with them. I have a Zoho ticket open, because my workspace creation fails. In the meantime, how is
    • Zoho Forms to Zoho CRM : First/Last Name to just Name ?

      When integrating a Zoho Form into the Accounts menu of the CRM I'm having trouble with how names are formatted ; In Forms the data is available as First Name or Last Name In the CRM there is only one field called Name How can I ensure that "John" "Smith"
    • This festive season, offer discounts with coupon code support in Stripe Checkout

      Hello form builders! It’s the festive season, the perfect time to spread joy and great deals! Now, with Zoho Forms’ latest enhancement for Stripe Checkout, you can do exactly that with coupon codes! Your payment forms integrated with Stripe Checkout can
    • Cómo creo una factura negativa o de abono?

      NEcesito anular una factura y crear una nueva igual pero en negativo. El sistema no me lo permite
    • Power of Automation::Streamline log hours to work hours upon task completion.

      Hello Everyone, A Custom Function is a user-written set of code to achieve a specific requirement. Set the required conditions needed as to when to trigger using the Workflow rules (be it Tasks / Project) and associate the custom function to it. Requirement:-
    • CRM : Function to add user name to text field

      I have a lookup field in a module that is linked to the CRM users so we can assign a Project Lead to the customer. Sadly Zoho Marketing Automation doesn't sync Lookup fields so I need to extract information from the lookup to text fields: Lookup field
    • Zoho CRM - Restrict Login based on work hours

      Hi there, I'm wondering if we can restrict users to login during works - For example the users would be able to login from 8am to 5pm. I have seen the IP address restriction - the only downfall is what if the customer has dynamic IP. thanks Jiri
    • Tips and Tricks #46: Customize themes and templates using Show's Master View

      Hi All!  Let's say you want to revamp your presentation and make changes to its visual design. You can do this easily using the Master Slide and its associated layouts. The Master Slide stores information about all the layouts used in the presentation.
    • Sheet View in CRM portal

      Hi, When will it be possible for my CRM portal users to edit/add records with Sheet View? George
    • What's New in Zoho Invoice | July - September 2025

      Hello everyone! We’re back with the latest updates and enhancements we’ve rolled out in Zoho Invoice from July to September 2025. Here’s what’s new this quarter: Introducing the Singapore Edition in Zoho Invoice Share Invoices through WhatsApp GST 2.0
    • Alert: Audio Call Support to be discontinued for Old Live Chat Widget from December 31, 2025

      Action Required: Upgrade to the New SalesIQ Live Chat Widget We're reaching out with an important update regarding the SalesIQ Live Chat Widget that requires your immediate attention. Effective December 31, 2025, audio call functionality will no longer
    • multiple contacts for one account

      We currently use Zoho CRM where each Account represents a club or organization, and each Contact represents a manager or owner. However, some of our managers own or manage multiple clubs, and Zoho only allows a contact to be linked to one account at a
    • Rich text Merge field - Not using font specified in HTML

      I have a rich text merge field in a writer template which is creating a table. I have chosen to use this method instead of a repeat region because I need to specify specific cell background colours which change every time the document is created. The
    • ヒートマップ詳細設定について

      はじめまして マーケティング担当の浅田です。 PageSenceのヒートマップ設定について質問です。 単一ページ毎の設定は上手くできるのですが 詳細設定にて、トップページのURLを含ませ全体のヒートマップを計測できないか試したところ お知らせ:データを受信していません。と表示されてしまいます。 トップページURLで始まるページの条件も試しております。 全頁を反映させたいと思い、詳細設定を上手く設定できたらと考えております。 どなたか詳しい方がいらっしゃいましたら、教えて頂けませんでしょうか 宜
    • Automatic category assignment

      Hi, I’d like to ask if there is a way to automatically assign an expense category based on the recognized Merchant. What would be the simplest way to set up automatic category assignment? Alternatively, is there an option to first choose the category
    • Experience with Zoho Vertical Studio

      I'm considering Zoho Vertical and would love to hear from some devs who've been using it. The Zoho ecosystem is pretty solid, so I assume the experience has been pretty good, but sometimes Zoho has its quirks. Overall, has your experience been positive?
    • LinkedIn Chrome Extension

      Hello - I believe it is a known issue that the LinkedIn extension Resume Extractor has stopped working and they are working on potential fixes. Wondering how others users are finding this issue and if there are any better workarounds for this issue? It
    • Advance PDF creation from CRM data

      I'm trying to create a PDF export of data in the CRM. My problem is I want a pretty complicated format for the data. I'm trying to export multiple modules worth of data, with nested one-to-many relationships between the modules. Along with that, I want
    • Sub-Form Padding in CSV Export

      Hi, When you use the Sub-Form, and for example you have a Date Field on the Main Page, then Option 1 and Option 2 fields on the Subform, when you export this to CSV the Date column will only have the Date in 1 row, the first row, it would be nice to pad
    • More Formula Functions

      Hi, I would like for example to be able to have a Date Field and Formula Fields, and then in the Formula Fields I would like to grab just the Month of the above Date Field or the Week Number of the above Date Field. So more "Functions" than the current
    • File upload size limits

      I am designing a contact form in Zoho Creator with File upload facility. I am not sure where and how to set the following properties for the same: Allowed File Types Maximum Size of the Attachment Number of Attachments
    • Composite Services and Account Tracking

      I am looking to garner support/request the ability to make composite services. A quick search in the forums brings up multiple requests for this feature. I fail to see why an item is mandatory while services are optional. I also would like to see the
    • All operation codes getting Not applied in WO-TT22J1025WOR0471, SR-TT22J1025PRE0423,FOR VIN-W1K6G2AB2SL005130.

      Dear Support Team, Please refer attached screenshot. All operation codes getting not applied in work order. Request you to please check and update ASAP.
    • Exclude Segment from Campaign Recipients

      I've created two Segments in order to separate Non-Marketing Contacts from Marketing Contacts. I'd like to send an Eblast to all Marketing contacts in my lists, but when I go to select Recipients, I have two options: 1. To Choose Lists to Send to; 2.
    • Next Page