Portal APIs in Zoho CRM - Part I

Portal APIs in Zoho CRM - Part I

Welcome back to another week of Kaizen everyone! 
This week, we will be discussing the Portals API in Zoho CRM.

What are Portals in Zoho CRM?

Portals in Zoho CRM allow businesses to extend access to their CRM to external stakeholders, such as customers, partners, vendors or franchisees. Portals allow users to view, edit and create records within the CRM, depending on their level of access and permissions. This helps businesses to manage customer and partner interactions, share information and improve communication. 

Sample Business Cases:

In Health care Industry - If you run a health care facility, you can provide your patients the access to their medical records using portals. Through the portal, the patients can have controlled access to their medical records like their appointments, tests done and medication prescribed. Patients can request appointments, provide updates to their information, and request copies of their medical records through the portal. 

In a consulting firm - If you run a consulting firm, you would want to keep your clients updated about the status of their projects in real time. To do this, you can create a portal and share it with your clients. The clients can view the status of their projects, including the progress, the budget, and the schedule. Clients can view the updates and provide feedback on the project through the portal. 

In the automobile industry - If you have an automobile shop, and you want to track the customer details, your sold vehicle details and service schedules, you can create a portal and share it with your customers. They can view and update their details and book for services using through the portal.

Creating a Portal via API

Let us consider the context of the automobile industry. To create a portal for your customers, you can use the Create Portal API.

Request URL : {api-domain}/crm/v4/settings/portals
Request Method : POST
Scope : ZohoCRM.settings.clientportal.ALL/CREATE

Sample Input

 {
    "portals": [
        {
            "name": "ZylkerAutomobiles"
        }
    ]
 }

Input Keys

 Key Description
 name Unique name of the portal. 

Sample Response

 {
    "portals": [
        {
            "code": "SUCCESS",
            "details": {
                "name": "ZylkerAutomobiles"
            },
            "message": "Portal created successfully with given name.",
            "status": "success"
        }
    ]
 }

Update Portal via API

You can update the portal name via Update Portal API. 
Request URL : {api-domain}/crm/v4/settings/portals/{portal-name}
Request Method : PUT
Scope : ZohoCRM.settings.clientportal.ALL/UPDATE

For instance, the following request renames the already created portal ZylkerAutomobiles to ZylkerAutos.

Sample Input 

 {
    "portals": [
        {
            "name": "ZylkerAutos"
        }
    ]
 }

Input Keys

 Key Description
 name Unique name of the portal. 

However, changing the portal name will also alter the portal URL. As a result, it is crucial to communicate this change to all existing portal users.

Get Portals via API

At any point, if you want to get the details of all the portals configured in your CRM account, use the Get Portal API.

Request URL : {api-domain}/crm/v4/settings/portals
Request Method : GET
Scope: ZohoCRM.settings.clientportal.ALL/READ

Sample Response:

 {
    "portals": [
        {
            "created_time": "2023-02-07T20:13:20+05:30",
            "modified_time": "2023-02-07T20:13:20+05:30",
            "modified_by": {
                "name": "Patricia Boyle",
                "id": "4876876000000327001"
            },
            "name": "ZylkerAutos",
            "active": true,
            "zaid": "10052946888",
            "created_by": {
                "name": "Patricia Boyle",
                "id": "4875876000000327001"
            }
        }
    ]
 }

Response Keys

 Key Description
 name The name of the portal
 active Represents whether the portal is active or not.
 zaid The unique id of the portal.

Now let us consider the case where you may want to extend the portal access to beyond your customers. There would be multiple user groups you may want to extend the access to, including the employees and partners. For instance, you may want to share the portal with your employees to give them access to customer information, sales data and service schedules. If you have partners, you may want to share the portal with them to keep them informed about the customer behaviors, sales data etc. Each of these groups may require to access to different types of data within the CRM.

To accommodate the different needs and access levels of the different types of users, you may need to create multiple user groups in the portal. For example, you could create a user group for customers and another user group for employees. The business can then configure different permissions for each user group, allowing or restricting access to the relevant data in the CRM account. This way, each type of user will be able to access the information that is most relevant to them, without compromising the security and privacy of the rest of the data in the CRM account.

Get Portal User Types API

The Get Portal User Types API allows you to retrieve the user types available in the portal of your org. It is important to note that when you create a portal, the default user type Client Portal is added by default.

Request URL : {api-domain}/crm/v4/settings/portals/{portal_name}/user_type
Request Method : GET
Scope: ZohoCRM.settings.clientportal.ALL/READ

Sample Request : https://www.zohoapis.com/crm/v4/settings/portals/ZylkerAutos/user_type

Sample Response

 {
    "user_type": [
        {
            "created_time": "2023-02-08T11:56:16+05:30",
            "default": true,
            "modified_time": "2023-02-08T11:56:16+05:30",
            "personality_module": {
                "plural_label": "Contacts",
                "api_name": "Contacts",
                "id": "1306462000000000129"
            },
            "name": "Client Portal",
            "modified_by": {
                "name": "Patricia Boyle",
                "id": "1306462000083528405"
            },
            "active": true,
            "id": "1306462000001813022",
            "created_by": {
                "name": "Patricia Boyle",
                "id": "1306462000083528405"
            },
            "no_of_users": 1
        }
    ]
 }

Response Keys

 Key Description
 default Represents whether the user type is the default one for the portal.
 personality_module Details of the module for which the user type was configured.
 name The name of the user type.
 active Represents whether the user type is active or not.
 id The unique id of the user type.
 no_of_users The number of users in the portal assigned with this user type.

Invite users to Portal via API

Once the portal is created, you can invite the customers to join the portal using the Invite Users to Portal API. This provides the customers with access to the information regarding their automobile including the servicing details, and their information.

Request URL : {api-domain}/crm/v4/{personality_module}/{record_id}/actions/portal_invite
where, personality_module is the API name of the module for which the portal was created and record_id is the ID of the record that you want to invite to the portal
Request Method : POST
Scope: ZohoCRM.settings.clientportal.ALL/CREATE

Parameters

 Parameters Parameter Description
 user_type_id : integer, mandatory
 The id of the user type you want to assign the user with. 
 type : string, mandatory
 Represents whether the user is invited (invite) the first time or is re-invited(reinvite).
 language : string, optional
 The language code of the user you want to invite to the portal

Please note that for the client portal user type, you can invite only clients/customers and not users with the same email domain like your employees or partners. 

In this sample request, 1306462000000659009 is the record id of the customer in Contacts module, and 1306462000001813022 is the user type id.

Sample Response

 {
    "portal_invite": [
        {
            "code": "SUCCESS",
            "details": {
                "record_id": "1306462000000659009"
            },
            "message": "An Invite has been sent to the personality.",
            "status": "success"
        }
    ]
 }

Get Users of a User Type API

The Get Users of a User Type API enables you to retrieve the list of users available in a specific user type of a portal.

Request URL : {api-domain}/crm/v4/settings/portals/{portal_name}/user_type/{user_type_id}/users
Request Method : GET
Scope : ZohoCRM.settings.clientportal.ALL/READ

Parameters

 ParametersParameter Description
 type : string, optional
The type of user. Possible values are AllUsers, AllActiveUsers, ActiveUsers,  DeactiveUsers, NotConfirmedUsers, ConfirmedUsers, and ActiveConfirmedUsers.
 filter : JSON object, optional
To filter based on the value disabled on updation of email of the status_reason__s field in the Users module. The allowed comparators are equal and not_equal. Note that you must encode this JSON object.

The following request retrieves the details of users in your ZylkerAutos portal, with Client Portal user type.

Sample Response

 {
    "users": [
        {
            "personality_id": "1306462000000659009",
            "confirm": true,
            "status_reason__s": null,
            "invited_time": "2023-02-08T18:03:10+05:30",
            "module": "Contacts",
            "name": "Jennifer Spears",
            "active": true,
            "email": "jennifer.spears@abc.com"
        }
    ],
    "info": {
        "per_page": 200,
        "total_count": 1,
        "count": 1,
        "page": 1,
        "more_records": false
    }
 }

Response Keys

 Key Description
 personality_id The id of the module for which the portal was created.
 confirm Represents whether the user is a confirmed user or not.
 status_reason__s The reason the user is disabled.
 module The API name of the module for which the user type was created.
 name The full name of the contact.
 active Represents whether the user type is active or not.
 email The email ID of the contact of that user type.

We will discuss more on user types and users in next week's post. We hope you found this post useful. 
Write to us at support@zohocrm.com if you have any questions.

    Access your files securely from anywhere







                            Zoho Developer Community





                                                  Use cases

                                                  Make the most of Zoho Desk with the use cases.

                                                   
                                                    

                                                  eBooks

                                                  Download free eBooks and access a range of topics to get deeper insight on successfully using Zoho Desk.

                                                   
                                                    

                                                  Videos

                                                  Watch comprehensive videos on features and other important topics that will help you master Zoho Desk.

                                                   
                                                    

                                                  Webinar

                                                  Sign up for our webinars and learn the Zoho Desk basics, from customization to automation and more

                                                   
                                                    
                                                  • Desk Community Learning Series


                                                  • Meetups


                                                  • Ask the Experts


                                                  • Kbase


                                                  • Resources


                                                  • Glossary


                                                  • Desk Marketplace


                                                  • MVP Corner




                                                            • Sticky Posts

                                                            • Kaizen #197: Frequently Asked Questions on GraphQL APIs

                                                              🎊 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.
                                                            • 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.
                                                            • Celebrating 200 posts of Kaizen! Share your ideas for the milestone post

                                                              Hello Developers, We launched the Kaizen series in 2019 to share helpful content to support your Zoho CRM development journey. Staying true to its spirit—Kaizen Series: Continuous Improvement for Developer Experience—we've shared everything from FAQs
                                                            • Kaizen #193: Creating different fields in Zoho CRM through 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.
                                                            • Client Script | Update - Introducing Commands in Client Script!

                                                              Have you ever wished you could trigger Client Script from contexts other than just the supported pages and events? Have you ever wanted to leverage the advantage of Client Script at your finger tip? Discover the power of Client Script - Commands! Commands


                                                            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 Writer

                                                                                              Get Started. Write Away!

                                                                                              Writer is a powerful online word processor, designed for collaborative work.

                                                                                                Zoho CRM コンテンツ








                                                                                                  Nederlandse Hulpbronnen


                                                                                                      ご検討中の方




                                                                                                            • Recent Topics

                                                                                                            • Backorder process review - Automating Removal of Sales Order from "On Hold" When PO is Received

                                                                                                              Hello Zoho Inventory Team, Currently, sales orders in On Hold status are released only when the bill for the purchase order is created. In our workflow, it would be much more efficient if the sales order could automatically move out of On Hold as soon
                                                                                                            • How to access the saved Query using API?

                                                                                                              I have created a query in setting. Is it possible to access it from a API? What's the endpoint? I tried /v8/queries/important_deals but didnt' work.
                                                                                                            • création d'une base de données

                                                                                                              base de donnee d'un lycée
                                                                                                            • User Session variables to recall after form submit & redirect to menu

                                                                                                              Hey, Forgive me if this is a simple answer I have overlooked. I have built a big onboarding process for my SAAS platform which is built and managed by an external Dev team. I am hoping to embed my new creator app on the SAAS platform. I have a menu page
                                                                                                            • Zoho Writer Merge Template with data from Zoho Analytics Views

                                                                                                              Hello, Is there any way to pull information from Zoho Analytics and put it into a Merge Template? I am trying to create a bulk export of one report that filters on a field to create a single document for each of the filter fields.
                                                                                                            • Having to enter bill before stock shows as available.

                                                                                                              Hi, Am I right in thinking you must create a bill from the purchase order receipt before the goods are available for shipping?
                                                                                                            • Agent Availability report

                                                                                                              From data to decisions: A deep dive into ticketing system reports Businesses need to track when their support agents check in and check out from work. This report, titled Agent Availability, is one of the static reports that helps managers track the number
                                                                                                            • Writing by Hand in "Write" Notes

                                                                                                              Hi there! I just downloaded this app a few moments ago, and I was wondering if there was a way to write things by hand in "Write" mode instead of just typing in the keyboard. It would make things a bit more efficient for me in this moment. Thanks!
                                                                                                            • AI-driven construction analytics using Zoho Projects Plus

                                                                                                              Construction projects thrive on timelines; if a project is completed on or before the expected time, it makes headlines, but if it gets delayed, the company’s credibility will be at risk. Such projects require precise planning and constant monitoring,
                                                                                                            • Canadian payroll

                                                                                                              Hello ZOHO, is any updates on when payroll for Canada will be available?
                                                                                                            • Unified customer view: Bringing product intelligence into your CRM data

                                                                                                              For businesses today, applications and digital interfaces are the main touch points in the customer journey. While Zoho CRM data already tells who your customers are and what they buy, Zoho Apptics tells you how they interact and engage with your product.
                                                                                                            • Zoho Creator SaaS app with multiple client AND multiple users

                                                                                                              I am close to finalizing a Zoho Creator app that will be used by different companies to manage sale info, and each company can have multiple users using the app. Things were going perfectly until I tried a search on a report. I use a database field in each table to separate the data for each company, which works great. BUT when I do a search, I get to see ALL the data. This means that Company A could easily see the data from Companies B and C via the built-in search. Is there a way to set up the
                                                                                                            • Project Change Orders and Additions

                                                                                                              We are in the process of migrating from QuickBooks Online to Zoho Books. We have Zoho One and like the ability to sync all of our data across everything. And I like that projects work in a way that's less dumb than QuickBooks. I'm trying to figure out
                                                                                                            • Track online, in-office, and client location meetings separately with the new meeting venue option

                                                                                                              Hello everyone! We’re excited to announce meeting enhancements in Zoho CRM that bring more clarity and structure to how meetings are categorized. You can now specify the meeting venue to clearly indicate whether a meeting is being held online, at the
                                                                                                            • Create custom rollup summary fields in Zoho CRM

                                                                                                              Hello everyone, In Zoho CRM, rollup summary fields have been essential tools for summarizing data across related records and enabling users to gain quick insights without having to jump across modules. Previously, only predefined summary functions were
                                                                                                            • Possible to send Zoom AI Companion transcripts and summaries to contacts in CRM?

                                                                                                              Title says it all. Is it possible to send Zoom AI Companion transcripts and summaries to contacts in Zoho CRM?
                                                                                                            • Introducing segments for targeted user engagement

                                                                                                              Hello everyone, We’re excited to announce Segments in Zoho Apptics, a new way to group users based on their behavior, preferences, and app activity. With Segments, you can deliver more meaningful, timely, and relevant experiences to your users. When combined
                                                                                                            • How do I edit the Calendar Invite notifications for Interviews in Recruit?

                                                                                                              I'm setting up the Zoho Recruit Interview Calendar system but there's some notifications I don't have any control over. I've turned off all Workflows and Automations related to the Calendar Scheduling and it seems that it's the notification that is sent
                                                                                                            • Posibility to add Emoticons on the Email Subject of Templates

                                                                                                              Hi I´ve tried to add Emoticons on the Subject line of Email templates, the emoticon image does show up before saving the template or if I add the Emoticon while sending an Individual email and placing it manually on the subject line. Emoticons also show
                                                                                                            • Clarity on extended contract status

                                                                                                              Clarity on “extended” status- How does Zoho “extend” a contract?  E.g. if client extends by 1 month, can the “end date” be adjusted accordingly in Zoho and tagged as “Extended” with a clear audit trail that also captures the client’s email? Note- Email
                                                                                                            • Customizing contract status

                                                                                                              Can we customize/add/remove status on Zoho contracts ourselves or does Zoho needs to do this? Context- There is a long list of status on Zoho but not all of them are relevant for us . There are few status which are missing and needs to be added. E.g-
                                                                                                            • Set Custom Business Calendars and Holidays for Global Teams

                                                                                                              Managing a project across diverse teams means accounting for more than just tasks and deadlines; it means acknowledging how and when each team actually works. Users might follow different working days or observe region-specific holidays that cannot be
                                                                                                            • [Integration edition] Deluge learning series - Integrations between Zoho apps and Third-party services with Deluge | 28 August 2025

                                                                                                              We’re excited to welcome you to the Deluge learning series: Integration edition! The Integration edition will run for three months: Session 1 – Integrating Zoho Apps with Deluge using inbuilt integration tasks Session 2 – Integrating Zoho Apps with Deluge
                                                                                                            • Critical Vulnerability in all major password manager plugins - is Zoho Vault affected?

                                                                                                              Hi Zoho, a security researcher found a critical clickjacking vulnerability in all major browser password managers: DOM-based Extension Clickjacking: Your Password Manager Data at Risk | Marek Tóth Is Zoho Vault affected as well? Apparently the Vault extension
                                                                                                            • Introducing SecureForms in Zoho Vault

                                                                                                              Hey everyone, Let’s face it—asking someone to send over a password or other sensitive data is rarely straightforward. You wait. You nudge. You follow up once, twice—maybe more. And when the information finally arrives, it shows up in the worst possible
                                                                                                            • Tables from ZohoSheets remove images when updated from source

                                                                                                              I have a few tables from a ZohoSheet in a ZohoWriter document that will remove the images in the cells when I refresh from the source. The source still has the images in the table when I go to refresh. After updating from the source, as you can see the
                                                                                                            • Change eMail Template for Event-Invitations

                                                                                                              Hello ZOHO-CRM Team How I can change the eMail Template for Event-Invitations? I work with the German Version of the Free Version. I know how I can modify eMail alerts or Signature Templates, but where I can other eMails modify you send out? Thank you for your answer. Regards, Juerg
                                                                                                            • Inventory Adjustments

                                                                                                              Hi, How to transfer the material from one head to another ? Like materials purchased for manufacturing the laptop need to transfer from consumption inventory (Quantity of raw materials reduced) to destination inventory ( Quantity of Laptop increased)
                                                                                                            • Need Your Insights

                                                                                                              Hi Zoho, I'm confused why the flow only sends to one output. setVariable15 is from a list. It doesn't consider the 2nd entry. Any thoughts?
                                                                                                            • Map Dependency Fields - How can can I limit picklist values from a multi-select Parent field?

                                                                                                              I know the "Map Dependency Fields" feature doesn't allow a multi-select parent field. However, I need the functionality. Can I do it through a deluge function, and would it still support color coding picklists? We need the color coding for quick scanning
                                                                                                            • DYK 1 - Color Palette for Enhanced Visual Identification of Status

                                                                                                              Introducing the Did You Know series of posts. The goal of this series is to familiarize users with certain features or enhancements in Zoho Projects that may not be evident at first glance. The first post in this series deals with color palettes for indicating
                                                                                                            • Invalid field in the COQL query

                                                                                                              Dear Zoho Support! I believe that you already helped me with a similar problem a few years ago. One of my clients has a custom field named "LOB" in the "Deals" Module (see the field's metadata below). The COQL query using this field: : "select id, Deal_Name,
                                                                                                            • Automating Employee Birthday Notifications in Zoho Cliq

                                                                                                              Have you ever missed a birthday and felt like the office Grinch? Fear not, the Cliq Developer Platform has got your back! With Zoho Cliq's Schedulers, you can be the office party-cipant who never forgets a single cake, balloon, or awkward rendition of
                                                                                                            • Transferring domain registration to new registrar and switching email hosting at the same time?

                                                                                                              I need to transfer an existing domain uv cure adhesive that's currently with SiteGround to Porkbun. I also need to move the existing custom email addresses from SiteGround to Zoho Mail. I'm not sure if I should transfer the domain first and then tackle
                                                                                                            • Split deposits

                                                                                                              Can Zoho do split deposits. One deposit, two checks for two separate invoices from different customers. This is one of the most common tasks I can imaging. When I mark the two invoices paid, there are two deposits in bank register. When I try to match,
                                                                                                            • Feedback: Streamlining Note Management in Zoho Notebook

                                                                                                              Dear Team/Support, I would like to share some feedback regarding the note management system that could help improve usability and accessibility for users like myself. Notebook 1 (screenshot attached): Currently, the system does not allow selecting and
                                                                                                            • Deactivate Desk Contact without Deleting Contat

                                                                                                              We have a client who has multiple tenants for regulatory purposes, and as such, has a few users that have email addresses in both tenants. They've then emailed into the ticketing system, so we have multiple contacts (no big deal, we want to keep their
                                                                                                            • Delete my store of Zoho commerce

                                                                                                              Hi Team, I want to delete my stores of commerce. Please help me asap. Looking for the positive response soon. Thanks Shubham Chauhan Mob: +91-9761872650
                                                                                                            • Ability to add VAT to Retainer Invoices

                                                                                                              Hello, I've had a telephone conversation a month ago with Dinesh on this topic and my request to allow for the addition of VAT on Retainer Invoices.  It's currently not possible to add VAT to Retainer Invoices and it was mutually agreed that there is absolutely no reason why there shouldn't be, especially as TAX LAW makes VAT mandatory on each invoice in Europe!   So basically, what i'm saying is that if you don't allow us to add VAT to Retainer Invoices, than the whole Retainer Invoices becomes
                                                                                                            • [Free Webinar] Learning Table Series - Zoho Creator for Asset Management with AI Enhancements

                                                                                                              Hello Everyone! We’re excited to invite you to another edition of Learning Table Series, where we showcase how Zoho Creator empowers industries with innovative and automated solutions. Each month highlights a specific sector, and this time our focus is
                                                                                                            • Next Page